クロスサイトスクリプティング対策
意味・解説
Webサイトの脆弱性を悪用したスクリプトの実行を防ぐための、サニタイジング等の防御策。
Webサイトの入力フォームなどに悪意あるJavaScript等が埋め込まれる攻撃(XSS)を防ぐ手法。HTMLで特別な意味を持つ記号(<, >など)を無害な文字列に変換する「サニタイジング(エスケープ処理)」や、入力値のバリデーションが基本となる。
くわしく
クロスサイトスクリプティング(XSS)対策は、動的なWebアプリケーションにおいて最も基本的かつ重要なセキュリティ実装である。
1. サニタイジング(エスケープ処理):ユーザーが入力した「<script>」などの文字列を「<script>」のように変換し、ブラウザ上で命令として実行されないようにする。これにより、偽の入力画面の表示やCookieの窃取を防ぐ。
2. バリデーション:入力されたデータが想定された形式(数字のみ、メールアドレス形式など)であるかを厳格にチェックし、不正なコードの混入を入り口で防ぐ。
3. セキュリティ設定:HTTPレスポンスヘッダーに「Content-Security-Policy (CSP)」を設定し、許可されたソース以外のスクリプト実行を制限する。実務では、これらを組み合わせた多層防御が求められる。特に掲示板や検索結果表示など、ユーザーの入力が画面に再表示される箇所での徹底が不可欠である。
例文
お問い合わせフォームの入力内容を画面に表示する際、XSS対策としてサニタイジング処理を実装した。
同義語: XSS防御
分類: Web脆弱性対策