Shikata Ga Nai

Private? There is no such things.

Weird (im)possible XSS on error pageを訳してみた

Hello there, ('ω')ノ

 

エラーページに奇妙な(不可能な)可能性のあるXSSを。

 

脆弱性:

 反射型XSS

 

記事:

 https://komradz86.medium.com/weird-im-possible-xss-on-error-page-a0b943ead41

 

今回のターゲットを、test.comとすると。

このWebサイトでは、エラーページが無効になっていて。

バックグラウンドを使用してWebサイト自体に統合されていて。

悪意のあるものを追加しようとしても、別のページにリダイレクトされて。

 

ただ、test.com/testで、エラー(Reflection Exception)を取得することができて。

このエラーに関する詳細情報を検索し始めたところ。

一部のリサーチャーが、htmlを挿入できたことがわかって。

このエラーをどのように見つけたかというと。

元のページ(test.com/test)にディレクトリに拡張子を追加したわけで。

test.com/test.php、またはtest.com/test.aspxをテストしたところ。

エラーページが表示されたので、エラーページのエラーメッセージを。

自分のエラーメッセージに操作できることがわかって。

 

次に何か他のものをチェックし始めると。

しばらくして、テスト中に同じエラーページに出くわすことに。

HTMLインジェクションをテストすると。

エラーメッセージが太字や下線付きなどで、HTMLをインジェクションできて。

 

次にXSSのテストを開始して、本の中で実行できるすべてのことを行って。

多くのペイロードをテストすると。

ページが特定のタグにのみ応答して、他のタグが無視されているのが奇妙で。

HTMLタグを再テストしたところ、同じことが起こって。

タグが受け入れられない場合は、ホームページにリダイレクトされるようで。

 

他のすべてのタグの代わりに<img src=タグを使用してXSSペイロードを挿入すると。

画像がインポートされていることを示す小さなアイコンが、ページに反映されたので。

これで、XSSを取得できたと思って。

さらに試したすべてのペイロードは、ホームページにリダイレクトされたので。

はじめのページに戻ったので怪しく思って。

 

f:id:ThisIsOne:20211007134037p:plain

 

さらにペイロードを試していると、下記(例)がWeb管理者によって。

使用されたホームページ、またはエラーページにリダイレクトされてたので。 

 <script>alert(1)</script>

 

f:id:ThisIsOne:20211007134102p:plain

 

Webサイトで悪意のあるコードを検出するために管理者が知らなかったのは。

タグを閉じなくても悪意のあるペイロードを挿入できたという、ある種の設定ミスで。

 例:<script>alert(1)

 

そして、各ペイロードを試した後に、初めに書いたようにtest.aspxを削除して。

ペイロードをディレクトリとして追加して、ペイロードを.aspxで終了することに。

最終的なペイロードは下記のとおりで。

 %3Cimg%20src=%22'%22id=’%3Cimg%20src=%22%22%3E’onerror=alert(1).aspx

 ⇧

 <img src="'"id='<img src="">'onerror=alert(1).aspx

 

f:id:ThisIsOne:20211007134125p:plain

 

ちょっとわかりずらいかも。

 

Best regards, (^^ゞ