Chain of Rate Limit Bypass and Weak Token Expiry Leads To Account Take Over から学ぶ

ソース:

medium.com

脆弱性:ATO、レートリミット

 

訳:

- まず、Web サイトでのパスワード リセットのプロセスを理解しましょう。

 

これは通常のプロセスで。
ユーザーは電子メールを入力し、次のようなリンクを電子メールで受け取り。
TARGET.COM/redirect?action=reset_password&lang=EN&code=CODEHERE

注意すべき重要な点は、Web サイトが 1 つのパラメータ値「CODE」に完全に依存していることで。

このパラメータ値は推測可能ですが、時間がかかり。

次のステップに進みます。トークンの有効期限は切れますか?

知っておくべき重要な点は、パラメーター値は推測可能ですが、時間がかかるということで。

メールを開かずに 1 日放置しましたが、戻ってきて。
実際、トークンの有効期限は切れておらず、パスワードをリセットすることができて。

  • しかし、ここで重要な点は、レート制限があるかどうかを確認することです。 ここで、トークンの総当たり攻撃を試み、パスワードを即座にリセットします。

レート制限

試行後、残念ながらレート制限がありました)。

したがって、ここではトークンの有効期限が切れていないとしてバグを報告できますが、重大度は低くなります。

しかし、私はそこで止まりませんでした。 レート制限を回避するテクニックを見つけようとしました。

何度も試した結果、Web サイトが IP をブロックしているだけであることがわかりました。

写真に示すように、「IP ROTATE」と呼ばれるBurp拡張機能を使用して、これを回避することができました。

 

 

本質的には、AWS サーバーに接続し、リクエストごとに IP が変更されます。

トークンの有効期限が切れていないことがわかっていたため、パスワードをリセットすることができ、アカウント乗っ取りにつながりました。

 

 

ほなほな。