クロスサイトスクリプティング(XSS)

ユーザーからの入力内容をwebページに表示するwebアプリケーションにおいて、対象のwebサイトのXSS脆弱性を利用した攻撃手法。

<やり方>

①罠を仕掛ける…入力内容にスクリプト付きのHTMLリンクを入れ込む(例:javascriptでalertポップアップを仕込む、偽の入力フォームなど)

②入力内容を一切チェックしない仕様のフォームだと入力したスクリプトがそのまま実行されるため、入力フォームが表示されてしまう

③ユーザが気が付かず、個人情報などを入力してしまう

④入力内容やcookieの情報を取得できる

<対策方法>

①入力値の制限

・文字種制限…数値以外の入力を許可しない⇒スクリプト入力は防げる

・サーバ側で行う…javascriptなどブラウザ側での制限だけでは、ブラウザからチェックの無効化が可能なため不十分

②サニタイジング(スクリプトの無害化)

・特殊文字の置換(エスケープ)…例:改行させない<br> ⇒ &lt;br&gt;

③WAF(ワフ)対策(Web Application Firewall)

・webアプリケーションを対象とし、リクエストに対してシグネチャやホワイトリストに基づき防御を行う。

・Webサーバーが利用するポート 80番、443番のトラフィックを
 双方向で監視して、悪意あるユーザーからWebアプリケーションとその背後にあるデータを守る製品

・IPS、Firewallと並べて活用される。

この記事が気に入ったらサポートをしてみませんか?