クロスサイトスクリプティングとは?くろすさいとすくりぷてぃんぐ
クロスサイトスクリプティングとは、攻撃者が入力欄やURLパラメータを通じてスクリプトを仕込み、それが他の利用者のブラウザ上で実行されてしまう脆弱性を突く攻撃。狙われるのはサーバではなく閲覧した利用者側で、クッキーの窃取によるセッション乗っ取りや、偽の入力画面を表示させる詐取に悪用される。
最終更新:2026-10-07
この語が出る過去問を解く →背景
Webアプリは利用者の入力をそのまま画面に描き戻す作りが多く、掲示板の書込みや検索キーワードの再表示がその典型だった。HTMLは文字列とタグを区別しないため、入力に紛れたタグがブラウザ側で命令として解釈されてしまう。原因は入力そのものではなく、出力するときに文脈に応じた無害化を怠る点にあり、その理解を問うのが出題の狙いになっている。
具体例
対策の要は、HTMLとして出力する時点で「<」「>」「&」「"」などの特殊文字をエスケープすること。加えてクッキーにHttpOnly属性を付ければスクリプトからの読出しを防げ、Content-Security-Policyで実行を許すスクリプトの出どころを限定できる。
試験での引っ掛け
対策は「入力時の検証」よりも「出力時のエスケープ」が本質。クロスサイトリクエストフォージェリ(CSRF)は、ログイン済みの利用者に意図しない要求を送信させる別の攻撃で、対策はトークンの照合になる。SQLインジェクションは被害がサーバ側のデータベースに及ぶ点で狙う先が違う。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:平成29年度 秋期 高度試験 午前Ⅰ 問15(IPA)解説で登場
WAFの説明はどれか。
正解:Webアプリケーションへの攻撃を監視し阻止する。
要点:WAFはアプリケーション層でWeb攻撃を検知・遮断する
WAF(Web Application Firewall)はHTTPリクエストやレスポンスの内容を検査し、SQLインジェクションやクロスサイトスクリプティングなどWebアプリケーションを狙う攻撃を検知して遮断する。通常のファイアウォールがIPアドレスやポートで制御するのに対し、アプリケーション層の中身を見る点が違いである。
出典:平成30年度 秋期 高度試験 午前Ⅰ 問13(IPA)
クロスサイトスクリプティング対策に該当するものはどれか。
正解:Webページに入力されたデータの出力データが、HTMLタグとして解釈されないように処理する。
要点:XSS対策の要は出力時のエスケープ処理
クロスサイトスクリプティング(XSS)は、利用者の入力した文字列がそのままWebページに出力され、スクリプトとして実行されてしまうことで成立する。したがって対策の中心は出力時のエスケープ処理であり、<や>、&などをHTMLタグとして解釈されない文字参照に変換することが該当する。
出典:平成30年度 春期 高度試験 午前Ⅰ 問12(IPA)
クロスサイトスクリプティングの手口はどれか。
正解:Webアプリケーションのフォームの入力フィールドに、悪意のあるJavaScriptコードを含んだデータを入力する。
要点:XSSは入力欄にスクリプトを仕込み他の利用者に実行させる
クロスサイトスクリプティングは、Webアプリケーションが利用者の入力をそのままページに出力してしまう欠陥を突き、入力欄に悪意のあるスクリプトを埋め込む攻撃である。そのページを閲覧した別の利用者のブラウザ上でスクリプトが実行され、Cookieの窃取や偽の入力画面の表示などが起こる。
出典:平成31年度 春期 高度試験 午前Ⅰ 問15(IPA)解説で登場
WAFの説明はどれか。
正解:Webアプリケーションへの攻撃を検知し、阻止する。
要点:WAFはWebアプリ層の攻撃を通信内容から検知して遮断する
WAF(Web Application Firewall)は、HTTP/HTTPSの通信内容を解析し、SQLインジェクションやクロスサイトスクリプティングなどWebアプリケーション層への攻撃を検知・遮断する仕組みである。パケットのヘッダだけを見る従来型ファイアウォールでは防げないアプリケーション固有の攻撃に対応する点が特徴である。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。