Shikata Ga Nai

Private? There is no such things.

How I Bypassed 2FA while Resetting Passwordを訳してみた

Hello there, ('ω')ノ

 

パスワードのリセット中に2FAをバイパスする方法を。

 

脆弱性:

 2FAバイパス

 パスワードリセットの欠陥

 

記事:

 https://infosecwriteups.com/how-i-bypass-2fa-while-resetting-password-3f73bf665728

 

今回は、「Hackerone」のプライベートプログラムで、2FAをバイパスすることを。

目標に設定していたので、「二要素認証」をバイパスする方法をすべてチェックして。

理解を深めるために、この記事を2つのパートに分けて。

 

 1.Webアプリケーションの機能を理解して。

 2.二要素認証をバイパスして。

 

ウェブサイトの名前を公開できないので、「Target.com」と呼ぶことに。

考えられるすべての方法を確認した後、パスワード機能をリセットするようになり。

パスワードリセットリンクを送信してブラウザで開いて。

 

https://abc.target.com/reset/<token>」

 

新しいパスワードを入力して。

[次へ]ボタンをクリックし、リクエストをBurp Suiteでキャプチャして。

 

Request:

POST /reset2fa HTTP/1.1

Host: abc.target.com

..

_csrf=<token>&reset_key=<key>&password=Test@123

 

このリクエストを転送した後、2FAページにリダイレクトされて。

下記が、2FAページで。

 

 

ここで、アカウントから2FAを無効にして。

2FAが有効/無効の場合の両方の要求の違いを確認して。

 

今度は、同じ手順で新しいパスワードを要求して。

新しいパスワードを入力し、Burp Suiteでリクエストをキャプチャして。

 

 

Request:

POST /reset HTTP/1.1

Host: abc.target.com

..

_csrf=<token>&reset_key=<key>&password=Test@123

 

リクエストを転送した後、ダッシュボードにリダイレクトされて。


バイパスパーツ

 

リクエストを比較すると。

POST /reset」がダッシュボードにリダイレクトされ。

POST /reset2fa」が2FAページにリダイレクトされていることがわかって。

 

バイパスするために、2FAを再度有効にして、パスワードのリセットを要求して。

 

https://abc.target.com/reset/<token>」

 

新しいパスワードを入力し、リクエストをBurp Suiteでキャプチャして。

 

Original Request:

POST /reset2fa HTTP/1.1

Host: abc.target.com

..

_csrf=<token>&reset_key=<key>&password=Test@123

 

POST/reset2fa」を「POST/reset」に変更

 

Modified request:

POST /reset HTTP/1.1

Host: abc.target.com

..

_csrf=<token>&reset_key=<key>&password=Test@123

 

リクエストを転送し、ダッシュボードにリダイレクトされて。

 

Best regards, (^^ゞ