申し訳ありませんが、タイトルを短くすることができませんでした。
今日、Dropboxからのパスワード回復を偶然見つけました。ここでは、ユーザーは自分のメールアドレスを入力する必要があり、Dropboxはこう言います:
[email protected]のDropboxアカウントが存在する場合、詳細な手順が記載された電子メールが送信されます。
https://www.dropbox.com/[email protected]
しかし、これの背後にある理由は何ですか?まず、攻撃者が電子メールアドレスをランダムに推測し、登録されているかどうかをチェックしないようにしようとしていると思いました。 [email protected]がcraigslistなどに登録されていることを想像してください。これは、場合によってはプライバシーの問題になる可能性があります。
しかし、私は新しいアカウントが登録されるときにあなたのメールがすべての既存のメールアドレスに対してチェックされることを思い出しました。
では、この動作の背後にある理由は何ですか?
まず、攻撃者が電子メールアドレスをランダムに推測し、登録されているかどうかをチェックしないようにしようとしていると思いました。 [email protected]がcraigslistなどに登録されていることを想像してみてください。これは、場合によってはプライバシーの問題になる可能性があります。
これがまさに多くのウェブサイトがそのようにそれを実装した理由であり、それが私がこれが持ち出されるたびに与えられたと私が見た理由です。
しかし、私は新しいアカウントが登録されるときにあなたのメールがすべての既存のメールアドレスに対してチェックされることを思い出しました。
...そして、これがまさにそうすることがほとんど常に無意味である理由です。
Jeff Atwood(StackOverflowとDiscourseの共同作成者)がこれをブログの投稿 The God Login で調査し、次のように要約します。
私たちはDiscourseの安全なデフォルトを選択することについて真剣に真剣に取り組んでいるため、箱から出して悪用されたり、悪用されたり、スパマーでオーバーランしたりすることはありません。しかし、実際に「どのメールをここで再び使用したのか」を体験した後、自分自身で数十のDiscourseインスタンスのログイン状態を確認したところ、この特定のケースでは、ユーザーフレンドリーであることが安全であるよりもはるかに重要であることがわかりました。
誰かがアカウントを持っていることを誰にも知られたくない。
悪意のある俳優が誰かに関する情報を検索している場合、誰かがアカウントを持っていることや組織のメンバーであることを知っているだけで、潜在的に損害を与える可能性があります。
各情報は、プライバシーに対するユーザーの権利を裏切るものです。
さらに進んで、いくつかの国の政府が敵対的または物議を醸すと見なしている組織またはアプリがあるとします。電子メールアドレスを持っている人なら誰でも、少なくとも実際に登録されたユーザーであることを(実際のアクティビティや参加状況に関係なく)確認できるようにするだけで、登録された市民でも危険にさらされる可能性があります。
あなたは理論的根拠を正しく理解しました。これは、誰かがサービスに登録されているかどうかを誰かにチェックさせないための保護です。
また、アカウントを作成しようとすると、すでに登録されている場合はエラーになります。しかしながら:
ハッキングするアカウントを見つけようとしているときは、チェックするだけです。アカウントを作成したくない。したがって、ログインフローが間違って実装されていない限り、この場合に確認できるのは、ユーザーがアカウントを持っているかどうか、またはあなた(または他の誰か)が既に存在しているかどうかを確認するためにアカウントを作成しようとしたかどうかだけです。
つまり、ハッカーは「ノイズの多い」進入ポイントを選択する必要があり、チェックしようとすると結果が汚染されるリスクがあるため、これは追加の保護レベルになります。