Shikata Ga Nai

Private? There is no such things.

Account Take Over by Response Manipulationを訳してみた

Hello there, ('ω')ノ

 

応答操作によるアカウントの乗っ取りを。

 

脆弱性:

 認証バイパス

 アカウント乗っ取り

 

記事:

 https://thevillagehacker.medium.com/account-take-over-by-response-manipulation-e1293ee51e9a

 

今回は、ログイン応答を操作することによるアカウントテイクオーバーについて。

ターゲットは、支払いや食べ物の注文などを行うための。

オンラインプラットフォームであるtarget.comと呼ぶことに。

 

サインアップページで、アカウント1(abc@gmail.com)に必要な情報を登録して。

 

f:id:ThisIsOne:20220408212627p:plain

 

サインアップ後、アプリケーションは指定された電子メールへの確認リンクを送信し。

電子メールを確認し、アカウント設定ページに転送して。

アプリケーションがログイン要求をどのように処理しているかを確認するために。

ログアウトして再度ログインすることに。

 

f:id:ThisIsOne:20220408212656p:plain

 

アプリケーションがAPIを使用してユーザを認証していることがわかったので。

リクエストをインターセプトし、APIがログインプロセスを。

どのように処理するかを観察して。

下記が、abc@mail.comのログイン要求と応答で。

 

f:id:ThisIsOne:20220408212730p:plain

 

サインアップとログインの応答は似ていますが、いくつかの変更が異なっていたので。

ログインの応答をサインアップの応答で操作することにして。

すぐにログアウトして別のアカウントを作成して。

アカウント2(xyz@gmail.com)のサインアップ応答をキャプチャして。

 

再度、アカウント1(abc@gmail.com)でログインして。

パスワードは、違ったものを。

 

f:id:ThisIsOne:20220408212813p:plain

 

以下のようにログイン要求を傍受して。

下記が、アカウント1(abc@gmail.com)のログインリクエストで。

 

f:id:ThisIsOne:20220408212843p:plain

 

このリクエストをインターセプトして。

401 Unauthorizedの応答を変更することに。

 

f:id:ThisIsOne:20220408214227p:plain

 

アカウント2(xyz@gmail.com)に200OKのサインアップ応答を入力して。

f:id:ThisIsOne:20220408214202p:plain

 

アカウント1(abc@gmail.com)のメールIDへの応答のメールパラメータを変更し。

すべてのリクエストを転送して。

下記が、アカウント1(abc@gmail.com)の設定ページで。

 

f:id:ThisIsOne:20220408214935p:plain

 

すぐにアカウント1(abc@gmail.com)の設定ページに移動して。

ログイン応答をサインアップ応答に操作することで。

パスワードなしでアカウント1(abc@gmail.com)に正常にログインできて。

 

Best regards, (^^ゞ