ソース:
脆弱性:BrokenAccessControl
訳:
私は最初に認証メカニズムをテストしたいので、対象の Web サイト (電子商取引 Web サイト) にアクセスし、登録ページに移動して 2 つの異なるアカウントを登録しました。
次に、ログインページに移動し、パスワードを忘れた場合の機能を起動しました。
パスワードをリセットするメールアドレスを求められたので、作成した 2 つの登録アカウントのうち 1 つのメールアドレスを入力し、リセットリンクの送信をクリックし。
次に、burp suiteで HTTP 履歴を開いたところ、次のリクエストに気づきました。
パスワードリセットリクエスト
このリクエストをリピーターに伝え、再度リクエストを送信したところ、驚きの結果が得られました。
パスワードリセット応答
API は応答でパスワード リセット リンクを送り返します。
目を疑ったので、リクエストのメールアドレスを、2番目に作成した登録メールアドレスに変更しましたが、同じことが起こりました!!
リンクをコピーしてブラウザに貼り付けると、パスワードのリセット ページが表示され。
その後、新しいパスワードでログインしようとしましたが、成功しました!!
これで、Web サイトに登録されているメールのパスワードをリセットできるようになりました。
ほなほな。