Webアプリケーションにおけるセキュリティ上の脅威とその対策に関する記述のうち,適切なものはどれか。
SQLインジェクション対策の基本はプレースホルダの利用
選択肢
- アOSコマンドインジェクションを防ぐために,Webアプリケーションが発行するセッションIDに推測困難な乱数を使用する。
- イSQLインジェクションを防ぐために,Webアプリケーション内でデータベースへの問合せを作成する際にプレースホルダを使用する。
- ウクロスサイトスクリプティングを防ぐために,Webサーバ内のファイルを外部から直接参照できないようにする。
- エセッションハイジャックを防ぐために,Webアプリケーションからシェルを起動できないようにする。
正解と解説
正解:イ SQLインジェクションを防ぐために,Webアプリケーション内でデータベースへの問合せを作成する際にプレースホルダを使用する。
SQLインジェクションは、入力値がSQL文の一部として解釈されてしまうことで起こります。プレースホルダを使って値をパラメータとして渡せば、入力内容がSQLの構文として扱われなくなるため、根本的な対策になります。脅威と対策の対応を取り違えないことがこの問題の要点です。
選択肢ごとの解説
- アセッションIDに推測困難な乱数を使うのはセッションハイジャックへの対策です。
- イ正解。プレースホルダの利用はSQLインジェクションの根本的な対策です。
- ウサーバ内のファイルを直接参照させない対策はディレクトリトラバーサルに対するものです。
- エシェルの起動を禁じるのはOSコマンドインジェクションへの対策です。
同じ分野の他の問題
- SEOポイズニングの説明はどれか。2022年度 公開問題 科目A・B 問19
- ドライブバイダウンロード攻撃に該当するものはどれか。2018年度 春期 午前 問21
- ディレクトリトラバーサル攻撃に該当するものはどれか。2017年度 春期 午前 問23
- クロスサイトスクリプティングの手口はどれか。2016年度 秋期 午前 問22
- ドライブバイダウンロード攻撃の説明はどれか。2016年度 春期 午前 問25
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。