括弧なしのXSS

hoshikuzuさんの日記から。

詰めXSS回答第弐回(分割方式)

これ、SCRIPTタグの内側に挿入できるけれども、括弧など殆どの記号がはじかれてしまうアプリがあって、仕事で1回だけ使ったことがあります。

とはいっても、hoshikuzuさんの記事の後半に書いてあるような技を使ったわけではなく、私の場合は単純に「a setter=alert,a=123」みたいのを入れて「詰み」としました。

私がsetterを使う手法を見つけたのはこちらのページです。

http://sla.ckers.org/forum/read.php?2,20954

sla.ckers.orgのXSS Info Forumは、まさにこの手のネタの宝庫です。

***

ところで、setterを使ったのは、以下のような経緯でした。

  • 私・・・XSSを報告
  • 開発者・・・なぜか括弧などの記号が使えないように改修
  • 私・・・まだXSSできることを報告
  • 開発者・・・数字のみ許可するように改修

初回の報告のときに、根本的な対策方法を含めて報告をあげるわけですが、開発者の方がそのとおりに改修してくれないことも多くあります。私も昔は開発をしていて検査を受ける立場だったこともあるので、なんとなく分からないでもないですが。時には、このようなやり取りがもっと続くこともあります。