やる
http://works.surgo.jp/translation/jarlsberg/index.html
- パート1
- http://works.surgo.jp/translation/jarlsberg/part1.html
- アカウントの作成
- 機能の確認(uid=xxx&pw=xxxが見えてる・・)
- my instance: http://jarlsberg.appspot.com/707510610609/
- さぁこれをぶっ壊してみましょう !
- パート2
- クロスサイトスクリプティング(XSS)
- http://works.surgo.jp/translation/jarlsberg/part2.html
- 攻撃者が、対象のWebサイトに、対象とは異なるスクリプトを読み込ませるようにすること。
- ファイルアップロードによる XSS
<script>alert("Hello Hello!!");</script>
-
- 折り返し型 XSS (Reflected XSS)
- リクエストにを入れたらそのままスクリプトが実行された。
- http://jarlsberg.appspot.com/761353007171/%3Cscript%3Ealert(%22hello%22)%3C/script%3E
- 攻撃方法
- http://jarlsberg.appspot.com/761353007171/のような文字列をクリックさせる。
- 解決方法
- ユーザが入力した値をエラーメッセージに表示する前にエスケープする。
- すべての出力をエスケープ処理し、そこからHTMLとして表示したい部分のみをタグづけする。
- 折り返し型 XSS (Reflected XSS)
<blocked>alert("hello");</script>
-
-
- <>を投稿すると
-
<blocked>
-
-
- < script>だと
-
<blocked script>
-
-
- < だと?
-
<blocked ><script>alert("1");</script>
-
-
- 実行できちゃった!
-