AVTOKYO 2014で「CSPが切り開くWebセキュリティの未来」という題で話してきた

AVTOKYO2014で、にしむねあさんといっしょに「はせむねあ」というユニット名でContent-Security-Policyをテーマに話をしてきました。

内容はスライドのとおりで、攻撃者はFiddlerなどを使って任意のCSP違反レポートJSONを送信可能であること、Firefoxの場合にはCSP違反レポートのJSON内に「<」「>」などが含まれるので、違反レポートを表示する管理画面でのエスケープ漏れがあると違反レポートを通じて管理画面内でXSSする、などの話を行い、実際に管理画面でのXSSのデモを行いました。

デモはあんまり細かいことは考えてなかったんですが、アドリブ苦手なにしむねあさんがいい味を出してて、横で見ていても楽しかったです。ちなみに直前の打ち合わせは以下のような感じでした。

  • にしむねあ「私、デモ直前にステージ上で衣装を替えようと思うんですが、はせがわさんどうします?」
  • はせがわ「攻撃者の格好してからステージに出ようと思ってたけど、じゃあ同じくステージ上でデモ前に準備しましょうか。」
  • にしむねあ「じゃあ前半のスライドを話すのどうします?間に合いませんよね?」
  • はせがわ「にしむねあさんに話すのも含めてやらせているという構図そのものもネタにしたいので、自己紹介以降全部にしむねあさんにお願いしちゃってもいいですか?」
  • にしむねあ「え?あ、はい…。」

ここからにしむねあさん超真面目な顔で台本を復習し始め本番へ。おかげでにしむねあさんは発表まで落ち着いて飲めなかったようですみませんでした!

ちなみに、あまりに細かすぎて伝わってなかった部分の補足:

  • 攻撃検知システムは Web Notifications API を使っていて、ブラウザが非アクティブでもXSSを検知した瞬間に右下に通知ウィンドウが出てきて教えてくれる便利仕様。
  • XSSの攻撃パターンはIMEに辞書登録。いちおう効果が弱そうな順に「メラ」「ギラ」「ベギラマ」「イオナズン」の読みを充ててました。
  • 時代はWebRTC。本当はXSSで攻撃者・管理者双方のカメラをONにして対談させたかったのですが、攻撃者・管理者あわせて1台のマシン上でデモを行っているので2台のカメラを動作させにくいのでああいうかたちになりました。

おまけ: https://www.flickr.com/photos/koyhoge/15608237270/