JavaScriptを画像に忍ばせてXSSの真似をしてみる
画像ファイルにJavaScriptを隠す | yohgaki's blog
セキュリティの話になっていたので試しにやってみる。画像にjavascriptを含ませ、その画像にアクセスさせるというやつ。
難しいことは分からないので、画像に「こんにちは世界」って言わせて終わることにする。
Let's try
材料
- 画像にjavascriptを混ぜる何か
- 画像
alert("Hello, world!");
- 画像を読むhtml
作る
画像にjavascriptを入れるのには
が使える。 画像は適当に用意する、今回はhoge.gifを使った
アラート alert("Hello, world!");
をhello.jsに書いておく
あとはimagejsを落としてきて make
して使う。
make ./imagejs gif hello.js -il hoge.gif
すると hello.js.gif
が出来上がるので
<script src="hello.js.gif"></script>
とhoge.htmlに書く
生成された画像について
今回使用したhoge.gifは150px四方のものなのだが、そこから生み出されたhello.js.gifは横の長さが10000px以上。MacのPreviewで開くと「壊れてる」と言われた。でもブラウザで見れる。
実行する
一式揃えてIE11あたりでhoge.htmlを見ると本当にはろーって挨拶された。Chromeは何も起きなかった。