平成30年度春期 応用情報技術者試験 午前 問37
クロスサイトスクリプティングの手口はどれか。
- ア Webアプリケーションのフォームの入力フィールドに,悪意のあるJavaScriptコードを含んだデータを入力する。
- イ インターネットなどのネットワークを通じてサーバに不正にアクセスしたり,データの改ざんや破壊を行ったりする。
- ウ 大量のデータをWebアプリケーションに送ることによって,用意されたバッファ領域をあふれさせる。
- エ パス名を推定することによって,本来は認証された後にしかアクセスが許可されないページに直接ジャンプする。
解答・解説を見る
正解:ア
AI解説
クロスサイトスクリプティング(XSS)は,入力値の出力時のエスケープ処理(サニタイジング)に不備があるWebアプリケーションに対し,悪意のあるスクリプト(JavaScriptなど)を含むデータを入力フィールドなどから注入し,それを閲覧した利用者のブラウザ上で実行させる攻撃である。「スクリプトを入力して利用者のブラウザで実行させる」が核心である。 ア: 正解。フォームの入力フィールドに悪意のあるJavaScriptコードを含んだデータを入力するのはXSSの典型的な手口である。 イ: 誤り。ネットワーク経由でサーバに侵入しデータの改ざん・破壊を行うのは不正アクセス全般の説明であり,XSS固有の手口ではない。 ウ: 誤り。大量のデータでバッファ領域をあふれさせるのはバッファオーバフロー攻撃の説明である。 エ: 誤り。パス名を推定して認証後にしかアクセスできないページへ直接ジャンプするのは強制ブラウジング(URL直打ちによる認可回避)の説明である。 💡 XSSの標的は「サーバ」ではなく「そのページを見る他の利用者のブラウザ」である点が特徴。対策は特殊文字のエスケープ処理。SQLインジェクション(DBへの命令注入)とXSS(ブラウザへのスクリプト注入)を混同させるのが定番のひっかけである。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。