Admintech.jp に行ってきた

Admintech.jp が大阪で開催されるということで参加してきた。
お目当ては、 id:hasegawayosuke さんのセキュリティのお話。

以下勉強会中にとったメモ。

IE に依存した Web アプリケーションセキュリティ (はせがわ ようすけ さん)

    • プレゼンツールは id:amachang の作ったツールを改造した
    • XSS についてのおさらい
      • 対策は HTML 生成時に正しくエスケープするのが基本
      • エスケープしても脆弱な事がある
    • IE の固有の問題点
      • UTF-7 による脆弱性
      • ASCII 文字だけで Unicode を表現できる
      • charset が不明瞭なサイトに文字コードUTF-7 と認識されるとほとんど攻撃が成功
      • IE が自動的に UTF-7と勝手に判断してくれる
      • 日本語が入っている場合、自動では判断されない
      • でも攻撃者が UTF-7 の iframe を経由すると UTF-7 と判断される
      • ブラウザが解釈できない charset を設定していると、無指定と判断される
    • ありがちな間違い
      • sjis / jis / utf8もだめ
      • 正しい charset 名を指定しましょう
    • タイトルタグに偽のメタタグを挿入し、本来の charset 名を無効にする
      • charset を明記(できれば HTTP レスポンスヘッダに)正しい charset を指定
    • US-ASCII による XSS
      • IE は US-ASCII の最上位ビットを無視する
      • 対策 US-ASCII を避ける
    • IEスタイルシート内に XSS を記述できる
      • 外部の CSS でも OK
      • 対策はユーザから CSS の入力を避ける、安全な要素だけでスタイルシートを組み立てる
    • Content-Type 無視
      • IE はHTML みたいなものは HTML と認識
      • Content-Type: text/plainでもスクリプトタグがあると、HTML として認識される
      • 攻撃対象になりやすいもの
      • 対策として安全な Content-Type のみ出力
    • まとめ
      • IE は友達。怖くない
      • IE8 にすれば解決?
      • UTF-7,US-ASCII の修正
      • CSS の expression は互換モードのみサポート

質疑応答で、UTF-7 はドロップする案はどうか?という質問が出ていたが、 文字コードは OS に組み込まれているのを使用するらしいから、ドロップは難しいとのこと。
また、 WAF で上記の攻撃を防ぐ事はできるのか?という質問には、 WAF は上記の攻撃の防ぐには意味をなさないとの事。

とても分かりやすいプレゼンだった。特に冒頭はすごく笑えたw


追記 (2008/09/29 22:36)
一部勘違いがありました。
「WAF は上記の攻撃の防ぐには意味をなさないとの事。」ではなく、「たいていのWAFは無理なんじゃないかと思う。知人がメンテナンスしてるWAFはOKかも」との事です。

id:Kanatoko さん、id:ockeghem さんご指摘ありがとうございました。
id:hasegawayosuke さん、フォローありがとうございました <(_ _)>

WebKit の可能性(及川 卓也 さん)

個人的には Mac では Safari 使いなので、Safari4 には凄く期待している。

IE8 について (五寶 匡郎 さん)

    • IE8 はユーザと開発者と異なるニーズに答えたい
    • キーワードは相互互換性
    • 開発者に支持されないブラウザは使われない?
    • 互換性?(IE6, IE7)
    • 機能概要まとめ
      • 今までの IE の中で一番 Web 標準に準拠
      • HTML, CSS, DOM, JScript,その他
    • 下位互換表示機能を搭載
    • 新機能の実装、改良
    • アクセラレータ
      • 速度的な物ではない。
      • 便利なショートカット?(選択した住所をコンテキストメニューで地図サイトでプレビューしたり)
      • WebSlice ウェブページの一部のフィードとして購読できる
    • 互換性について
      • 複数のモードを持つ
      • 互換表示ボタン
        • 特別な操作をすると互換表示が表示される
        • サイトオーナーがメタタグなどが明示的に IE8 だと表示されない
        • 互換モードはあくまで表示のみの互換
    • 新機能について
      • デモ
    • IEAK8
      • IE のカスタマイズしてリリースするやつ
      • Yahoo!IE 設定とか
      • グループポリシーを設定した IE を作る事ができる
      • レジストリをいじっても出来るけど、グループポリシーで変更した方が良い
      • あとインストール・アンインストールは少々手間が掛かるかも
    • フィードバック
      • フィードバックしてね

IE7 と IE8 ではぱっとの見た目が変わらないので、直ぐ判断する方法は?という質問に対して、アドレスバーの色づけで分かるとの事。
また、ツールバーIE7 には無い物があるので、それで判断するとからしい。
ただ、UI は変わる可能性もあるかもしれないとの事。

Mozilla からみて IE8 に期待すること (himorin さん)

    • ソフトウェアアップデートのお話
    • Add-On やプラグインの自動アップデートは?
    • プラグインアップグレードのお話
      • 将来的にどうすべき?
        • ベンダに圧力をかける
        • アップグレードするように草の根活動
        • 古いプラグインをブラウザがブロックする
        • Firefox3.1 までに更新機能をアップグレード?
    • プラグインベンダとの協力が必要
    • NSIS 関わらず他のブラウザとの協調
    • IT adminとしてどういう方式が望ましい?

最後は半ばディスカッションみたいな形でどうすれば良いのかという議論で面白かった。
アプリケーションの中のプラグインの更新とかの話だったけど、アプリ自体の更新の管理ができないかという話になってた。
例えば、 Mac では AppFresh というツールがあって、登録すると自動的にアプリの更新状況を見てくれるツールがあるんだけど、 Windows には無いんだろうか。
旧・Macの手書き説明書 - FC2 BLOG パスワード認証
Windows だと コントロールパネルの追加と削除でアプリケーションの更新状況を取得できれば便利だと思う。


今回はブラウザがテーマだったので、興味深かった。
そういえば、WindowsMobile での IEIE 限定の仕様なんだろうかという話が周りで起きてた。
手元に WindowsMobile を持ってないので、分からないけどどうなんだろう。
ともかく非常に有意義な勉強会だった。


スタッフの皆さん、発表者の皆さん、参加者のみなさんお疲れ様でした!