Shikata Ga Nai

Private? There is no such things.

A weird XSSを訳してみた

Hello there, ('ω')ノ

 

奇妙なXSSを。

 

脆弱性:

 反映されたXSS

 

記事:

 https://infosecwriteups.com/a-weird-xss-77c13d135c9f

 

ターゲットサイトをredacted.xxx.brと仮定して。

 

ツール:

Sublist3rツ​​ールを使用してサブドメインを列挙し始めたものの。

何も奇妙なことではなかったので。

 https://github.com/aboul3la/Sublist3r

 

f:id:ThisIsOne:20210818091218p:plain

 

ParamSpiderツールにアクセスして、見つかったホストのパラメータを分析すると。

応答が200と404を選んだので、膨大なリストで。

404ページに何かが反映されているかどうかを確認するのは常に良いことなので。

 https://github.com/devanshbatham/ParamSpider

 

f:id:ThisIsOne:20210818091311p:plain

 

Httpxツールを使用して、リスト内のすべてのリンクを開いて下記のパラメータで。

反映されているかどうかを下記のページで確認すると。

 パラメータ:-match-string、-match-regex

 

f:id:ThisIsOne:20210818083820p:plain

 

下記のとおり、パラメータ全体は小文字で最初の文字だけが大文字で。

これは、固有名詞の簡単な処理で。

このペイロードを注入して実行されるかどうかを確認しようとしても。

alert(1)は、メソッドが実行されず。

 

f:id:ThisIsOne:20210818083846p:plain


インジェクション:

HTMLインジェクションを実行するいくつかの方法を試すことに。

&」と「#」が前に付いた文字の数値をパラメータで送信すると。

画面に文字を表示することができて。

 

f:id:ThisIsOne:20210818083924p:plain

&#文字はURL(それぞれ%26%23)でエンコードされているので。

URL構築記号として扱われず。

エンターをクリックして、文字が大文字に変わっていないのを確認できて。

下記のペイロードを作成して実行すると。

alert(1)は、HTMLエンコーディングとして送信されて。

<img%20src=x%20onerror=”%26%2397%26%23108%26%23101%26%23114%26%23116(1)”>

 ⇩

<img%20src=x%20onerror=”&#97&#108&#101&#114&#116(1)”>

 ⇩

<img%20src=x%20onerror=”alert(1)”>

 

f:id:ThisIsOne:20210818084006p:plain

 

特殊文字のコード表は、下記のサイトを参考に。

 http://osksn2.hep.sci.osaka-u.ac.jp/~naga/miscellaneous/tex4ht/HTML-charcode-table1.htm

 

f:id:ThisIsOne:20210818090638p:plain

 

Best regards, (^^ゞ