Shikata Ga Nai

Private? There is no such things.

Reflected XSS into HTML context with all tags blocked except custom onesをやってみた

Hello there, ('ω')ノ

 

カスタムタグを除くタグがブロックされた状態でXSSをHTMLコンテキストに反映を。

このラボでは、カスタムタグを除くすべてのHTMLタグをブロックして。

ラボを解決するにはカスタムタグを挿入してXSS攻撃を実行せよとのことで。

 

まずは、下記を入力して動作確認を。

 '><img src=x onload=alert(1)>

 

f:id:ThisIsOne:20210328212420p:plain

 

エラーのページが。

 

f:id:ThisIsOne:20210328212445p:plain

 

リクエストボディは以下のようで。

 

f:id:ThisIsOne:20210328212520p:plain

 

はじめに下記をデコードして内容の確認を。

 %3Cxss+id%3Dx+onfocus%3Dalert%28document.cookie%29%20tabindex=1%3E#x';

 

f:id:ThisIsOne:20210328231313p:plain

 

エクスプロイトサーバで、下記のコードを入力して。

 

<script>
location = 'https://ac881f4b1ec05a7f80800c9200330059.web-security-academy.net/?search=%3Cxss+id%3Dx+onfocus%3Dalert%28document.cookie%29%20tabindex=1%3E#x';
</script>

 

location変数は、割り当てられているWebサイトにリダイレクトして。

検索ボタンをクリックすると、以下のページにリダイレクトされるわけで。

 https://your-lab-id.web-security-academy.net/?search=

 

<xssコードのこの部分は、「xss」という名前のカスタマイズされたタグを作成して。

ラボでは、カスタマイズされたタグ以外、ほとんどのタグがブロックされていて。

 

id=x は、カスタマイズされた<xss>タグに「x」という名前のid属性を追加して。


onfocus=alert(document.cookie) は、割り当てられているHTML要素が。

フォーカスを取得したときにjavascriptコードを実行するイベント属性で。

 

tabindex=1 は、「tab」ボタンを使用してHTML要素のタブ順序を指定するだけで。

今回、カスタマイズされたxssタグには、id=xが割り当てられていて。

タブキーで、IDがxのhtml要素にフォーカスされるという流れで。

 

最後にStoreして、Deliver exploit to victimをクリックすると。

 

f:id:ThisIsOne:20210328213007p:plain

 

クリアできた。

 

f:id:ThisIsOne:20210328212808p:plain

 

View exploitで、エクスプロイトを表示させてタブキーを押していくと。

スクリプトが表示されて。

document.cookieの内容が表示されなかったもので、alert(123)に変更していて。

 

f:id:ThisIsOne:20210328225254p:plain

 

Best regards, (^^ゞ