秀逸なXSSの練習サイト 21
ストーリー by nabeshin
矛を知って盾を磨く 部門より
矛を知って盾を磨く 部門より
あるAnonymous Coward 曰く、
はてなブックマーク経由で知ったのですが、XSS Challenges というXSSの練習サイトが公開されています。全18問、単純なものから始まり、だんだんと難しくなっていくようです。一部の問題ではIEのみ対応のようですが、メールアドレスを登録するとどこまでクリアしたかのランキングも表示されたりと、おもしろい仕上がりになっています。
普段はなかなか実際にXSSを体感できる機会は少ないと思います。ひとつ腕試しにトライしてみてはいかがでしょうか。ちなみにタレコミ子は Stage #5 で音を上げてしまいました。
あれっ (スコア:3, おもしろおかしい)
コメントが少ないのは (スコア:2, おもしろおかしい)
orz
#9で止まりました orz (スコア:2, 参考になる)
とりあえず、#3を越える方法ですが、これ以降はフィールドの値を変える必要があるため、Firebug [mozilla.org]が必須になります (Firefoxユーザーの場合)。Firebugで開いた上で、HTML→Editで適当にソースを変更してhiddenフィールドなどを改造していきましょう。
もちろん、コンソールでalert(document.domain)を打つなどチートは幾らでも出来ますけど、そういうのは無しの方向で。
昔、hiddenパラメーターの中身をいじると管理者権限が取れるヤバいサーブレットを見せられたのを思い出した。当時から既にセキュリティホールが見つけられたと騒いでいたけれどどうなったんだろうか...
Re:#9で止まりました orz (スコア:2)
Re: (スコア:0)
だいたい、scriptをxscriptに変えるより、htmlspecialchars通した方が楽で有効でないかい?
Re: (スコア:0)
>scriptをxscriptに変えるより、
そういうのをしているアプリがまだまだ多いので警鐘かもねぇ?
>htmlspecialchars通した方が
「それでもだめな場合」があるから最後までやってもいいんじゃないかと思う。「それでもだめな場合」がこの練習問題に登場しているかどうかわからないけど。ん?エンコードごまかし系があるなぁ確か。bookmarklet作っておいてざっと問題ページだけ見てきただけでいっているんですまん。
Re:#9で止まりました orz (スコア:1, 参考になる)
FAQ が公開されていますが、さっき Q8 が追加されたみたい。
Re: (スコア:0)
Re: (スコア:0)
Re: (スコア:0)
Re: (スコア:0)
GET受け付けてくれないので
何らかのツール使わないとできないよね?
Re:#9で止まりました orz (スコア:1, 参考になる)
を利用するとか
Re: (スコア:0)
javascript:void(document.forms[0].elements[2].options[0].text='[script]alert(document.domain);[/script]');
みたいに送信パラメタ周りの強制上書きでしょうね。
XSSじゃなくて完全に悪意ある攻撃状態ですが。
# 悪いサイトのお手本を忠実に再現してて笑いました。
Re: (スコア:0)
Re: (スコア:0)
俺もそうしたんだけど、セッションID取るのが面倒だった。
オールドタイプなのかな・・・・
# 昔、XSS じゃないけどHTML隠しページを探して進んでくページ面白かったなぁ
Re: (スコア:0)
# Webアプリ作る人はリファラチェックしてても、ツールあればフォームデータは簡単に改ざん出来るし、
# それどころかツールなくても簡単にフォームデータは書き換えられる位は知ってて欲しいかな。
Re: (スコア:0)
下記で、オフィシャルな(?)回答が公開されたみたいです。DOMを使うらしい。
◆XSS Challenges - Stage #3 の答え
http://yamagata.int21h.jp/d/?date=20080204#p01 [int21h.jp]
みなさん仕事してますか? (スコア:0)
お仕事の人も、そうではない人もがんばってください。
Re:みなさん仕事してますか? (スコア:2, 興味深い)
Re: (スコア:0)
そのころは忙殺されてたので、まともに記事を読んでませんでした。
今行ってみたら、かなりハマリそうな気配を本能的に感じたので、
週末が都市伝説として語られそうな雰囲気の中では、さすがにヤバイと思い帰ってきました。
後でやってみよっと♪