平成22年度春期 応用情報技術者試験 午前 問43
SQLインジェクションの説明はどれか。
- ア Webアプリケーションに悪意のある入力データを与えてデータベースの問合せや操作を行う命令文を組み立てて,データを改ざんしたり不正に情報取得したりする攻撃
- イ 悪意のあるスクリプトが埋め込まれたWebページを訪問者に閲覧させて,別のWebサイトで,その訪問者が意図しない操作を行わせる攻撃
- ウ 市販されているデータベース管理システムの脆弱性を利用して,宿主となるデータベースサーバを探して自己伝染を繰り返し,インターネットのトラフィックを急増させる攻撃
- エ 訪問者の入力データをそのまま画面に表示するWebサイトに対して,悪意のあるスクリプトを埋め込んだ入力データを送り,訪問者のブラウザで実行させる攻撃
解答・解説を見る
正解:ア
AI解説
SQLインジェクションは、Webアプリケーションの入力欄に悪意のあるSQL文の断片を混入させることで、想定外のSQL命令文を組み立てさせ、データベースの不正な閲覧・改ざんを行わせる攻撃手法である。 ア: 正しい。悪意のある入力データを与えてデータベースへの問合せ・操作命令文を組み立てさせ、データを改ざんしたり不正に情報を取得したりする攻撃がSQLインジェクションである。 イ: 悪意のあるスクリプトが埋め込まれたWebページを閲覧させ、別のサイトで訪問者が意図しない操作を行わせる攻撃は、クロスサイトリクエストフォージェリ(CSRF)の説明である。 ウ: 市販のDBMSの脆弱性を利用して宿主サーバを探索し自己伝染を繰り返す攻撃は、ワーム(ネットワーク感染型のマルウェア)の説明である。 エ: 訪問者の入力データをそのまま画面表示するサイトに、悪意のあるスクリプトを埋め込んだ入力を送り訪問者のブラウザ上で実行させる攻撃は、クロスサイトスクリプティング(XSS)の説明である。 💡 SQLインジェクション対策の基本はエスケープ処理とプレースホルダ(バインド機構)によるSQL文の組み立てである。CSRFやXSSとの違いを混同しないよう注意する。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。