Hello there, ('ω')ノ
OTP送信にレート制限はありませんを。
脆弱性:
ブルートフォース
レート制限の欠如
記事:
https://medium.com/@noob_master/no-rate-limiting-on-otp-sending-39a3a9fc93f6
レート制限アルゴリズムは、セッションキャッシュ内の情報に基づいて。
ユーザセッション(またはIPアドレス)を制限する必要があるかどうかを。
確認するために使用されて。
素人の言葉では、クライアントが特定の時間枠内に送信するリクエストが。
多すぎる場合、サーバはリクエストのレートを防ぐために。
さまざまな方法でレート制限を採用して。
今回、テストしたWebサイトは、詳細が提供される前にOTPを電話番号に送信して。
新しいユーザを登録していて。
通常、このタイプのシステムでは、OTPが送信されると、一定期間有効になり。
別のOTPを送信するために再送信ボタンをクリックする必要がありますが。
このウェブサイトには、そのような再送ボタンなどは何もなくて。
ここで、「Send OTP」機能の要求を傍受し、リピータに送信して。
これでリクエストを送信し、OTPが電話に送信されたので。
次に、最初のリクエストを送信した後、遅滞なく同じリクエストを再度送信して。
ただし、今回の回答には「1分後にOTPを送信できる」との回答が含まれていたので。
1分後にリクエストを送信しようと思い。
そして、1分後、同じリクエストを送信でき、別のOTPを受け取って。
今、何時後にリクエストを正確に再送信できるかを注意深く観察して。
そして、それは40秒であることがわかったので。
プロセスを自動化できれば、40秒ごとに複数のOTPを送信できることが。
明らかになって。
Burp SuiteのIntruderにスロットルと呼ばれるオプションがあったので。
Intruderにリクエストを送信し、スロットルを40秒に設定し。
ペイロードタイプをNullに設定して、攻撃を開始すると。
40秒ごとにOTPを送信し、電話にスパムを送信して。
https://portswigger.net/blog/burp-2-0-how-do-i-throttle-requests
https://portswigger.net/burp/documentation/desktop/tools/intruder/intruder-resource-pool
Best regards, (^^ゞ