2010年01月19日 07時30分 UPDATE
特集/連載

スクリプト対策から脆弱性チェックまでクロスサイトスクリプティング攻撃とは 後編――防止方法

いまだに攻撃者の攻撃手段として利用されるクロスサイトスクリプティング(XSS)。この、簡単に実行できてしまうXSS攻撃による被害を最小限に抑える方法を取り上げる。

[Michael Cobb,TechTarget]

 前編では、クロスサイトスクリプティング(XSS)攻撃の基礎知識として、XSS攻撃が成立する仕組みについて説明した。今回はXSS攻撃を防ぐための手法を紹介する。

XSS攻撃の防止方法

 自社のサイトがXSS攻撃の被害に遭う確率を下げるためには、何らかの形のセキュリティ開発ライフサイクル(SDL)を使ってWebアプリケーションを開発することが不可欠だ。その目的は、アプリケーションの設計とコーディング段階でセキュリティ関連問題の数を減らし、問題が見つけられずに残ってしまった場合でも危険性を抑えることにある。セキュアなアプリケーションの開発において学ぶべき鉄則として、そのアプリケーションが受け取るデータはすべて、信頼できないソースから来ることを前提としなければならない。これは、そのアプリケーションで受け取るデータ、cookie、電子メール、ファイル、画像など、あらゆるデータに当てはまる。たとえ自分のアカウントにログインして認証を済ませたユーザーからのデータであっても同じだ。

 ユーザーの入力データを信頼しないということは、データを信頼できる境界へと受け渡す都度、そのデータの種類、長さ、フォーマット、レンジをチェックするということだ。例えば、Webフォームからアプリケーションスクリプトに変換し、その後エンコードしてから動的ページへ再表示するような場合がこれに当たる。実際の環境では、自社のサイトでユーザー提供のデータが処理されるすべてのポイントを見直し、ユーザーに再提示する前にクライアントサイドから受け取った値をすべて確実にチェックし、フィルタにかけ、エンコードすることになる。

関連ホワイトペーパー

XSS | 脆弱性 | Internet Explorer | Apache | cookie | パスワード | .NET | Perl


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

news093.jpg

SaaS企業として驚異の継続率97% ServiceNowが考える、CX向上にDXが不可欠である理由
「ガートナー カスタマー・エクスペリエンス&テクノロジ サミット 2019」におけるServic...

news134.jpg

「Tableau 2019.2」発表、コミュニティーからリクエストが多かった新機能を多数追加
位置情報に基づく意思決定を支援するベクターベースのマッピング機能も。