2011年09月12日 09時00分 UPDATE
特集/連載

企業はJavaScriptを完全に無効にすべきか否かIE、Firefox、Chrome開発者を悩ませるJavaScript、ユーザー企業への影響は?

高品質なWebページを実現できる一方でハッカーに悪用されるケースの多いJavaScript。企業はその存在を完全に無効にすべきかどうか、必要なセキュリティ対策も踏まえて検討する。

[Michael Cobb,TechTarget]

 JavaScriptは、最も利用されているWebサイトスクリプト言語だ。Webブラウザ上で動作し、HTMLのみの場合に比べてはるかに動的なページを実現できる。一方でハッカーにとっては、ブラウザを乗っ取り、不正な操作を実行できる存在でもある。

 JavaScriptが攻撃に悪用されるケースが多いためクロスサイトスクリプティング(XSS)をはじめ、さまざまなインジェクション攻撃に利用されている、ブラウザベンダーは一層のセキュリティ対策が求められている。本稿では、JavaScriptのセキュリティ対策を幾つか紹介する。また、企業はJavaScriptを完全に無効にすべきかどうかについても検討する。

 JavaScriptのセキュリティ対策の1つは、不正コードが埋め込まれている既知のサイトへのユーザーアクセスを防ぎ、コードが実行される機会そのものを絶つことだ。MicrosoftのInternet Explorer(IE) 8とIE 9はURLをフィルタリングするSmartScreen機能を利用し、Firefox、Safari、ChromeはGoogleのSafeBrowsingを採用して、同様の処理を行っている。仕組みは、まず上記のようなレピュテーションベースのシステムがインターネット上の不正なWebサイトを検索し、検索結果に従ってサイトのコンテンツにフラグを付ける。次にユーザーがリクエストしたURLのレピュテーション情報をブラウザが要求し、危険を示すフラグがコンテンツに付けられている場合は、ユーザーに警告を表示する。

 IE 9にはXSSフィルタ機能も実装されている。この機能は、Webサイトからの他のWebサイトに対する動作を分析し、疑わしいスクリプトコードが別のサイトに混入することを防ぐ。Chromeにも同様の機能がある。Firefoxの場合はNoScriptプラグインをユーザーがインストールする必要がある。ただし、いずれのコントロールでも、ブラウザがサーバの意図とは違う形でコンテンツを解釈する可能性があるため、信用できないコンテンツを適切に除外することは難しい。実際、Samyワームはこの矛盾を突き、(MySpaceサイトで入力検証時にブロックされる)単語「JavaScript」を「Java」と「Script」の2つに分けることで、CSSタグ内にコードを混入させた。

この記事を読んだ人にお薦めの関連記事

注目テーマ

ITmedia マーケティング新着記事

news079.jpg

出版取次大手の日本出版販売が腐女子のポータルサイトと連携、書店への来店促進にARアプリを活用
日本出版販売は、ボーイズラブコミック専門ガイドブック「B+LIBRARY vol.3」にARアプリ「...

news077.jpg

月額9900円、Twitter広告の新たなメニュー「オートプロモート」の特徴を5つのポイントで解説
Twitter Japanは、月額9900円で毎日10ツイートとプロフィールを広告化できる「オートプロ...

news057.jpg

DACと博報堂アイ・スタジオがコンテンツマーケティング支援チームを組成
デジタル・アドバタイジング・コンソーシアムと博報堂アイ・スタジオは、コンテンツマー...