クロスサイトスクリプティングとは

情報漏洩に注意

ウェブサイトに不正にスクリプトを仕掛けられると、気付かないうちにログインIDやパスワードを悪意ある第三者に知られてしまいます。

クロスサイトスクリプティングとは

クロスサイトスクリプティングとは、掲示板などプログラムで生成されるページに、悪意を持った第三者がスクリプト(Javascriptを使うことが多い)を仕掛け、訪問者にスクリプトを実行させることです。

cross site scripting の頭文字を取ると CSS ですが、スタイルシート(cascading style sheet) の略称と紛らわしいため、XSS と称することが多いです。

訪問者が気づかない

クロスサイトスクリプティングは、訪問者にスクリプトを実行させるのが目的です。 クリックなど何かアクションを起こした時だけでなく、マウスが通過した時や、一定時間が経過した時にもJavascriptを実行することができるので、訪問者が気づかれないでスクリプト実行することが可能です。

また、仕掛けられるスクリプトは、データ改竄などの直接的な攻撃を行うスクリプトは少なく、クッキー情報の取得などを行うスクリプトが多いため、スクリプトが実行されたとしても気づきにくいです。

クロスサイトスクリプティング対策

代表的なクロスサイトスクリプティング対策を紹介します。 ※セキュリティに完全はありません。 セキュリティ関連のニュースには敏感になっておきましょう。

入力データのチェック

訪問者が自由に書き込みできる場合(掲示板等)は、入力フォームからのデータをチェックし、必要ならサニタイズ(スクリプトの無効化)を行うようにしましょう。 詳細は入力のチェックをごらんください。

クッキーに重要な情報を保存しない

クッキーにクレジットカード情報等を保存していると、XSS攻撃を受けると簡単に漏洩してしまいます。 重要な情報はクッキーには保存しないようにしましょう。

デフォルトでエスケープする

テンプレートシステムやフレームワークを使用して、デフォルトでエスケープするようにしましょう。 どうしても HTML タグを出力しなければならない場所は、入力データを厳密にチェックしておく必要があります。

Copyright (C) 2003-2013. PHP で WEB 作成 All rights reserved.