Internet Explorer 8 の XSS Filter

IE8 beta 2 が出たというので、XSS Filter で遊んでみたら、5分くらいで簡単に貫通した。
攻撃対象が Shift_JIS で書かれているときに

http://example.com/cgi-bin/test.cgi?q=a%20style=a%81::expression(alert(1))

みたいなリクエストを投げると、スクリプトが動いた。噂によると、非英語圏ではバグがまだあるらしい・今回は間に合わなかったので次のマイルストーンまでには修正する、ということらしいので、もしかするとこのケースが該当するのかも知れない。たぶん、このMBCSの先行バイト埋め込み型はこれ以外にも様々なパターンで働くと思う。他にも違う登山ルートがあるか、またあとで探す。
どちらかというと、toStaticHTMLのほうが難しそう。こちらがもし貫通した場合は、きっと脆弱性扱いなんだろうな。