塩焼きブログ

塩焼きに関しての研究内容を公開しています

Google ChromeのXSS保護機能について

このようなクエリから直接タグを埋め込むXSSを行うページを作成し

http://example.com/hoge?tag=<script>alert("xss")%3B<%2Fscript>

Chromeから閲覧したら下記のようなエラーが出てページが表示されませんでした。

このページは動作していません

このページで通常と異なるコードを検出したため、個人情報(例: パスワード、電話番号、クレジット カード番号)を保護するために、ページをブロックしました。 サイトのホームページにアクセスしてみてください。

ERR_BLOCKED_BY_XSS_AUDITOR

ソースコードを開くとページのソースを見ることができます。この時XSSで埋め込まれた該当のタグが赤くハイライトされていました。

スクリーンショット 2017-06-29 10.56.16.png

ChromeはXSSのあるページもある程度チェックしてくれているようです。(ちなみに、Base64エンコードした値をクエリに渡し、ページ側がBase64デコードしてからコンテンツを表示する場合は検知されません。)