Hello there, ('ω')ノ
奇妙なXSSを。
脆弱性:
反射されたXSS
記事:
https://infosecwriteups.com/a-weird-xss-77c13d135c9f
今回は、XSSでの探索を少し異なる方法でやめた方法を。
パート1:検索
Webをサーフィンしていていると.xxx.brサイトにたどり着いて。
政府のWebサイトのセキュリティ履歴は非常に悪いので。
アプリケーションを調べて何か見つけたかどうかを確認したいと思って。
最も単純な入力にマルウェアを注入し始めましたが。
すべてが非常によくサニタイズされているように見えて。
パート2:ツール
Sublist3rツールを使用してサブドメインを列挙し始めましたが。
何も奇妙なことではなかったので、ParamSpiderツールに移動して。
見つかったホストのパラメータを分析することに。
https://github.com/aboul3la/Sublist3r
https://github.com/devanshbatham/ParamSpider
リストは膨大でリターンが200と404の両方を選んで。
構築が不十分な404ページに何かが反映されているかを確認するのは良いことで。
リスト内のすべてのリンクを開いて、それが反映されているかどうかを。
Httpxツールを使用して確認して。
パラメータで、-match-string と -match-regexを使用すると。
次のページを見つけるまで、検索することができて。
https://github.com/projectdiscovery/httpx
パラメータはすべて小文字ですが、最初の文字が大文字になり。
残りが小文字になるように反映されてるので、これは固有名の簡単な処理で。
ペイロードを注入して実行されるかどうかを確認しようとしましたが。
alert(1)で動作が適用され(Alert(1))、メソッドが実行されず。
パート3:インジェクション
最初はHTMLインジェクションが機能していたので。
HTMLインジェクションを実行するいくつかの方法を研究し始めて。
「&」と「#」が前に付いた文字の数値を使用して。
HTML文字セットテーブルに到達するまで、画面に文字を表示することができて。
&#文字はURL(それぞれ%26と%23)でエンコードされるため。
URL構築記号として扱われず。
https://www.w3schools.com/html/html_charset.asp
[Enter]をクリックして、文字が大文字に変更されていないことを確認できて。
テストを終了して、次のペイロードが作成して。
このalertは、HTMLエンコーディングとして送信されて。
<img%20src=x%20onerror=”%26%2397%26%23108%26%23101%26%23114%26%23116(1)”>
Best regards, (^^ゞ