Shikata Ga Nai

Private? There is no such things.

Exploit an unexploitable XSS via an open redirectを訳してみた

Hello there, ('ω')ノ

 

オープン リダイレクトを介して悪用不可能な XSS を悪用するを。

 

脆弱性:

 XSS

 オープンリダイレクト

 

記事:

 https://medium.com/@ajzead660/exploit-an-unexploitable-xss-via-an-open-redirect-a-real-life-scenario-from-a-hackers-mindset-32b71041c5fe

 

今回は、わかりやすくするために、ターゲットが 2 つのドメインで

構成されていると仮定して。

 

 1- www.target.com

 2- subdomain.target.com

 

目的は、多数のエンドポイントを持つこれらのターゲットを中心に展開していて。

ログインページにアクセスすると、このパラメータが確認されて。

 

returnurl

 

残念ながら、外部 Web サイトへのリダイレクトを防ぐセキュリティ制限が

設けられているようで。

それでは無駄だと思いますので、このまま先に進み。

追加のエンドポイントを探索して発見するために通常どおりログインを続行して。

subdomain.target.com で見つけたエンドポイントの 1 つは、以下のとおりで。

 

 /rest/userprofile.json?command=getinfo

 

 

さまざまな注入手法を試した結果、エラーが発生し。

無効な値が検出されて。

 

 getinfo' (target\UserProfileRestClient)

 

値を正常に出力できたので、XSS の可能性を検討する価値があり。

そして XSS ペイロードは正常に実行され無効な値が検出されて。

 

 <script>alert("ZIX")</script>' (target\UserProfileRestClient)

 

 

ユーザの Cookie を盗む別のペイロードを作成し、それを被害者に送信すると

被害者がそれを開いて終わりで。

しかし、どうやってを考えることに。

 

Burp Suiteを使用すると完璧に機能し。

ただし、ヘッダをいじって時間をかけて、ヘッダを削除または置換しようとして。

エンドポイントにアクセスしてエクスプロイトを実行するための重要な要件があり。

それは、Referer ヘッダがターゲット ドメインまたはそのサブドメインの

いずれかに設定されている必要があるということで。

 

これには課題が生じ。

どうすればこの任務を達成できるのか。

それは不可能のようで。

しかし、target.com で以前に発見したオープン リダイレクトの脆弱性があったので

これで解決策が見つかって。

 

計画は次のとおりで。

1.subdomain.target.com エンドポイントに設定された returnurl パラメータを

 含むログイン ページを被害者に送信して。

2.被害者は通常どおりリンクを開いてログインして。

3.ログイン ページは被害者を感染したページにリダイレクトし、Referer ヘッダが

 メイン ドメイン www.target.com に 設定されていることを確認して。

4.感染したページはペイロードを被害者のブラウザに配信し、

 エクスプロイトの実行に成功して。

 

 

 

Best regards, (^^ゞ