正答1
解説
正解は1です。
Webアプリケーションを狙う代表的な攻撃の名称と内容を対応させる問題です。
SQLインジェクションは、入力欄などを通じて不正なSQL文を注入(inject)する攻撃です。
【選択肢別解説】
1:○ 入力値の検査が不十分なWebアプリケーションに、SQL文の一部となる文字列を入力して、意図しない問合せを実行させる攻撃です。
これによって、データベースのデータが不正に取得・改ざんされます。
これがSQLインジェクション攻撃です。
2:× 罠のページを閲覧させて、別のWebサイトで利用者が意図しない操作を行わせるのは、クロスサイトリクエストフォージェリ(CSRF)です。
3:× DBMSの脆弱性を利用して自己増殖し、通信量を急増させるのは、ワームによる攻撃です。
SQL Slammerなどがこの例です。
4:× 入力をそのまま画面に表示するサイトにスクリプトを送り、閲覧者のブラウザで実行させるのは、クロスサイトスクリプティング(XSS)です。
【ポイント】
SQLインジェクションの代表的な対策は、プレースホルダを使ったバインド機構です。
入力値に含まれる特殊文字をエスケープすることも有効です。