web-dev-qa-db-ja.com

パスワード期限切れメールのリンクをリセットする

私たちの組織は、この秋、40,000人以上のユーザーに年間パスワードの有効期限を展開しており、この変更をしばらくの間、社会化してきました。ただし、このような大規模な組織であるため、ユーザーは常にフィッシングメールにさらされています。原則として、ユーザーに「予期しないメールのリンクをクリックしないでください」と伝えています。

現在、パスワードの有効期限を公開しているため、間もなくパスワードの有効期限が切れるユーザーに、パスワードの変更を促すメールを送信する予定です。

メール:

  • よくブランド化されており、プロフェッショナルに見える
  • ユーザー名と内部(完全にプライベートではありません)のID番号でユーザーを個人的に識別します
  • 何が起こっているのか、どのような行動を取るのかを明確に説明する
  • 送信メールサーバーが組織の上級ユーザー向けであることを示す適切なヘッダーが含まれている(たとえば、これらをオフサイトから送信しない)

ただし、ユーザーの利便性を大幅に向上させるために、メールにいくつかのリンクがあります。

  • ウェブサイト上のパスワードの有効期限に関するドキュメントへのリンク
  • 実際のパスワードリセットアプリケーションへのリンク
  • パスワード回復アプリケーションへのリンク(パスワードを紛失した場合)

また、URLとSSL証明書を確認して信頼できるサイトを特定する方法に関するミニガイドもあり、不明な場合はホームページ自体へのアドレスを入力してからリンク先をたどります。

私の質問は:

パスワードの有効期限の電子メールに正当性を追加して、ユーザーがこの電子メールを信頼して(おそらく予期していなかった)リンクをクリックできるようにするか、リンクをすべて破棄して、ユーザーにメールの便利なボタンをクリックする代わりに、自分で処理しますか?

4
Resorath

短い答えはノーです。確かにあなたはあなたのメールを非常に正当な見た目にすることができます、それは問題ではありません。問題は、メールのリンクをクリックするようにユーザーを調整していることであり、メールは100%安全ではない媒体です。メール内のリンクはアンチパターンです。

「公式の見た目」は安全ではありません。メールのほとんどすべてが、専用の攻撃者によって複製される可能性があります。あなたがmycompany.comである場合、myc0mpany.comを使用する攻撃者は、ほぼ確実にユーザーのかなりの割合をフィッシングするでしょう。攻撃者はSSLとSPFも使用できます。つまり、強力な識別子ではない非常に微妙なことがいくつかあります。

あなたがこれにいくつかの考えを入れたことは明らかです。ユーザー名でユーザーを識別するようなことは合法性を追加しますが、「あなた」からの別のメールがそうでなかった場合、ほとんどの人は気づきますか?実験として、追加の正当性ブースターを使用せずに、または偽造ドメイン(myc0mpany.com)から同様のメールをテストグループに送信した場合、クリック率はほぼ同じになると思います。

さて、あなたの上司があなたにリンクを使用するように圧力をかけたら、私は確かに理解しています。私たちは業界として、このアンチパターンを期待するために、エンドユーザーから政策立案者まですべての人を調整するという信じられないほど良い仕事をしました。ただし、可能であれば、一歩下がってください。メールにリンクが必要なのはなぜですか?

次回のログイン時にパスワードのリセットだけを処理できないのはなぜですか?次回ログイン時にパスワードをリセットする必要があることをユーザーに通知するメールを送信します。ユーザーが直接(安全でない)リンクなしでログイン画面に移動できないと思われる場合は、ブラウザーのスクリーンショット(URL付き)とログインページを含めることができます。

また、パスワードのリセットを一度に40,000人のユーザー全員にロールアウトすることはしません。バッチで処理し、バッチ間で時間をかけてフィードバックを取得します。

パスワードを紛失した場合でも、メールにリンクを含める必要はありません。

  1. ウェブサイトでユーザーがログインしようとしましたが、ログインできません。
  2. ユーザーはパスワードを忘れてクリックし、別の識別要件をすべて完了します。
  3. サーバー側でリセットコードを生成し、アカウントのステータス(リセット)を保存するためにデータベースのユーザーレコードを更新し、リセットコードと有効期限を保存します。
  4. リセットコードを含むメールをユーザーに送信します(リンクなし)。
  5. ページが読み込まれ、リセットコードを含むメールが送信されたことをユーザーに示します。
  6. ユーザーはメールからリセットコードをコピーし、安全なサイトに貼り付けます

フィッシング攻撃を防ぐためにできる最も重要なことは、メールのリンクをクリックしないようにユーザーに定期的かつ継続的に通知することです。これは、すべてのメール通信とWebサイトログインの両方で行う必要があります。また、fraud @ mycompany.comなどの専用のメールアドレスを用意し、すべてのメールコミュニケーションでそれを宣伝する必要があります。これでフィッシングメールを防ぐことはできませんが、早期に攻撃を警告することがあります。

4
Gerald Davis

1)メールをデジタル署名できるので、より信頼できるようになります(メールアプリがサポートしていて、添付ファイルとして表示しない場合)。

2)リンクを含めるのは最良のアイデアではありませんをメールに含めます。変更の方法と場所を指示することをお勧めします。また、パスワード変更ツールは会社のURLにある必要があります彼らはそれを知っており、信頼しています。

3)このメールは設立された会社のアドレスから送信されますあなたの会社であり、顧客はそれを信頼しています。 (つまり、info @ yourcompany.comを使用している場合は、passwords @ yourcompany.comなどを作成しないでください。)

4)一部のアンチウイルスのスキャンフッターソフトウェアを追加します。たとえば、これはアバストを追加します。

Avast! footer

5)このメールには会社のロゴと通常の会社の署名を含める必要があります。

6)使用できるものがあればユーザーにこのメールを期待するように伝えるで、どのアドレスからそれを実行するか。このすべてのパスワードメッセージへのリンクも含めて、ユーザーがそれを検証できるようにします。

7)重要:SPFレコードをセットアップするであるため、攻撃者が送信者アドレスに@ yourcompany.comを含む偽のメールを送信すると、マークまたは抑制されます。そうでない場合、攻撃者は「偽のメーラー」の一部を使用できます。次に例を示します。 Emkeiの偽のメーラー

1
Vilican