安全なWebアプリケーションの作り方について、攻撃と対策の適切な組合せはどれか。
攻撃 | 対策 | |
ア | SQLインジェクション | SQL文の組立てに静的プレースホルダを使用する。 |
イ | クロスサイトスクリプティング | 任意の外部サイトのスタイルシートを取り込めるようにする。 |
ウ | クロスサイトリクエストフォージェリ | リクエストにGETメソッドを使用する。 |
エ | セッションハイジャック | 利用者ごとに固定のセッションIDを使用する。 |
答え ア
【解説】
ア | SQLインジェクションの対策には、SQL文の組立てをプレースホルダを使用し、そのプレースホルダを静的なものにすることが有効です。 |
イ | クロスサイトスクリプティング(Cross Site Scripting、XSS)の対策には、Webサイトのユーザー入力データから、スクリプトに使われる特殊文字の入力を無効する処理(サニタイジング)を行います。 |
ウ | クロスサイトリクエストフォージェリ(Cross Site Request Forgeries、CSRF、XSRF)の対策には、処理を実行するページをPOSTメソッドでアクセスするようにします。 |
エ | セッションハイジャック(session hijacking)の対策には、セッションIDを推測困難なものにします。 |
【キーワード】
・SQLインジェクション