レポート

「Web Directions East 2009」レポート(後編)

この記事を読むのに必要な時間:およそ 4 分

2009年11月11日から13日の3日間,ベルサール九段にて,Web Directions East 2009が開催された。2008年より2度目の開催となる今回は,"Webとビジネスを繋げる発想と創造"とテーマに,世界のWebトップのエキスパートを招聘した。

本レポートでは2回にわたって,13日に行われたカンファレンスの様子をお伝えする。今回は,その後編。

デザイントラックA セッション3:
Ajaxアプリケーションの安全性(ダグラス・クロックフォード氏)

3人目のセッションは,Yahoo!のJavaScriptアーキテクトとして所属しており,JSONの父として著名なダグラス・クロックフォード氏が登壇した。

ダグラス氏によれば,⁠クロスサイトスクリプティングによる攻撃は1995年に初めて確認された。古くから残るこの大きな問題は,根本的に改善されていない」とし,⁠時間が経てばアップグレードによってこれらの脆弱性がパッチされるが,それと同じように新しい機能が追加された場合,それは新しい脆弱性を追加する可能性があるということを認識しなければならない」と語る。

特にブラウザのセキュリティモデルには問題があるようだ。脆弱性の修正が十分ということはなく,むしろ新機能によって脆弱性が溜め込まれている状況下に陥っている。デベロッパーは脆弱性に対して完璧な知識をもたなければならないはずだが,それは膨大で不可能だ。しかし,どうにかしなければWebは潰れてしまうかもしれない。

氏はそもそもデファクトスタンダードに問題があると指摘する。現在のアプリケーション開発は,まず仕様にそった実装をすることが多く,セキュリティを後付けするような手法がとられていることもあるようだ。氏は,⁠セキュリティは後付けすることができず,まずはじめに考えておかなければならないことだ。多くのデベロッパーはそれに関して無頓着である」と語る。

写真1 バージョン2.0においてセキュリティをの仕様を追加するのは問題だと主張する,ダグラス・クロックフォード氏

画像

現在のWeb標準にも警鐘を鳴らす。マッシュアップによって複数のサイトやAPIの間によって埋込まれるコードはHTMLやCSS,Javascriptなど,様々な言語を隔てることになるため,悪意のあるコードを隠蔽しやすい。この問題は根本的な問題であって,解決することは容易ではなく,マッシュアップすればするほど,危険性は増すことになるという。

この問題に対応するObject Capabilitiesという新しいセキュリティモデルを解説。その理論について,マークサミュエル氏のRobust Compositionを紹介した。Object Capabilitiesは,相互に監視し,Reference(参照)のみのアクセスによってメッセージのやりとりをすることで,被害を最小限にするという考え方で,マッシュアップのあるべき姿であるという。気になる人は論文に目を通すとよいだろう。

写真2 Object Capabilities説明時のスライドの一枚

画像

現状Javascriptは,このObject Capabilitiesという新しい考え方についての対応が進んでおり,Googleが公開しているCajaを用いることで,このセキュリティモデルを強制することができるとし,かつJavascriptのスタンダードであるECMAScriptの最新版5.0では言語の中でこのCajaの仕組みを取り入れることで,非常に軽量かつセキュアにこの問題に対処する動きにあると紹介した。

写真3 ECMAScriptはCajaの仕組みを取り入れていく方向だと説明

画像

しかしながら,一方でDOMは複雑で安全性が欠落しているとし,W3Cが進めているHTML 5についてもセキュア面がカバーできているとは到底思えないという。⁠DOMが強大となり,セキュア性がどんどん下がってしまっている」と語った。

写真4 DOMは複雑なので,セキュリティ対策が不十分

画像

このセッションではアプリケーションに対するこれからセキュアの方向性を示すセッションだったといえるだろう。さらに,HTML 5に関してもWeb業界で話題になっている表面的な部分ではなく,話題になりにくいセキュリティの面では大きな問題を孕んでいることを示唆しているのは間違いない。これらの側面に関してこれからの動向には注目しなければならないだろう。

Note:
本セッションの資料は,crockford.comのサイトにアップされている。

著者プロフィール

加茂雄亮(かもゆうすけ)

株式会社ロクナナにて,ActionScriptを伴うFlashコンテンツや,AjaxコンテンツなどRIA開発に従事するフロントエンドエンジニア。テクニカルライターとしての一面を持ち,WEB・雑誌・書籍、媒体問わず執筆。また,イベントやセミナーでの講演など,精力的に活動している。

URLhttp://log.xingxx.com/
URLhttp://rokunana.com/

コメント

コメントの記入