基本情報技術者平成28年春期 午前問37

問37

SQLインジェクション攻撃の説明として,適切なものはどれか。
  • Webアプリケーションのデータ操作言語の呼出し方に不備がある場合に,攻撃者が悪意をもって構成した文字列を入力することによって,データベースのデータの不正な取得,改ざん及び削除をする攻撃
  • Webサイトに対して,他のサイトを介して大量のパケットを送り付け,そのネットワークトラフィックを異常に高めてサービスを提供不能にする攻撃
  • 確保されているメモリ空間の下限又は上限を超えてデータの書込みと読出しを行うことによって,プログラムを異常終了させたりデータエリアに挿入された不正なコードを実行させたりする攻撃
  • 攻撃者が罠を仕掛けたWebページを利用者が閲覧し,当該ページ内のリンクをクリックしたときに,不正スクリプトを含む文字列が脆弱なWebサーバに送り込まれ,レスポンスに埋め込まれた不正スクリプトの実行によって,情報漏えいをもたらす攻撃

分類

テクノロジ系 » セキュリティ » 情報セキュリティ

正解

解説

SQLインジェクションは、Webアプリケーションに対してデータベースへの命令文を構成する不正な入力データを与え、Webアプリケーションが想定していないSQL文を意図的に実行させることで、データベースを破壊したり情報を不正取得したりする攻撃です。

対策としては、入力値のうちSQLにおいて特殊な意味を持つ文字を適切にエスケープ(無効化)する「サニタイジング」を行うことが有効です。また、DBMSやライブラリによってはバインド機構やプレースホルダといったSQLを安全に実行する仕組みが用意されており有用です。
  • 正しい。SQLインジェクション攻撃の説明です。
  • DoS攻撃の説明です。
  • バッファオーバーフロー攻撃の説明です。
  • クロスサイトスクリプティング攻撃の説明です。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop