2026年版・1-4

サイバー攻撃の手口(Webアプリケーションへの攻撃)の一問一答

情報セキュリティマネジメント試験「情報セキュリティ総論・脅威と脆弱性」から、サイバー攻撃の手口(Webアプリケーションへの攻撃)に関する4択問題を10問。「答えと解説を見る」を開くと、正解とその理由がその場で読めます。会員登録は不要です。

この分野の演習

全10問/解説つき・基本無料

アプリ形式で解く(全480問) 情報セキュリティ総論・脅威と脆弱性の要点解説を読む
問題

上から順に解いてみてください。答えは各問の下で確認できます。

問11-4

Webアプリケーションの入力フォームに不正な文字列を入力し、背後のデータベースへ想定外の命令を実行させる攻撃を指す用語として、最も適切なものはどれか。

  • ①クロスサイトスクリプティング
  • ②SQLインジェクション
  • ③ディレクトリトラバーサル
  • ④OSコマンドインジェクション
答えと解説を見る
正解 ②SQLインジェクション
解説
SQLインジェクションとは、Webアプリケーションの入力フォームなどに、SQL文の一部として解釈される不正な文字列を注入(インジェクション)し、データベースに開発者の意図しない命令を実行させる攻撃である。個人情報の窃取やデータの改ざん・削除につながるおそれがある。対策としては、プレースホルダを用いたバインド機構(プリペアドステートメント)の利用が有効である。

他の選択肢が不適切な理由
「クロスサイトスクリプティング」はWebページに悪意あるスクリプトを埋め込み、閲覧者のブラウザ上で実行させる攻撃であり、データベースへの命令実行を主目的とするものではない。「ディレクトリトラバーサル」はサーバ上の意図しないファイルへ不正にアクセスする攻撃である。「OSコマンドインジェクション」はデータベースではなくOSのコマンドを不正に実行させる攻撃であり、標的とする対象が異なる。
問21-4

攻撃者が用意した罠のリンクを利用者にクリックさせ、Webサイトの脆弱な入力フォームを経由して悪意あるスクリプトを一時的にブラウザ上で実行させる攻撃を指す用語として、最も適切なものはどれか。

  • ①格納型クロスサイトスクリプティング
  • ②セッション固定化攻撃
  • ③クリックジャッキング
  • ④反射型クロスサイトスクリプティング
答えと解説を見る
正解 ④反射型クロスサイトスクリプティング
解説
反射型(非持続型)クロスサイトスクリプティングは、攻撃者が悪意あるスクリプトを含んだURLを罠として用意し、それを利用者にクリックさせることで、脆弱なWebサイトがそのスクリプトをレスポンスにそのまま含めて(反射して)返し、閲覧者のブラウザ上で実行させる攻撃である。攻撃を成立させるには利用者にリンクをクリックさせる必要がある。

他の選択肢が不適切な理由
「格納型クロスサイトスクリプティング」は、悪意あるスクリプトをサーバ側の掲示板やコメント欄などに保存させ、そのページを閲覧した全ての利用者に対して実行させる手口であり、罠のリンクを都度クリックさせる必要がない点で反射型と異なる。「セッション固定化攻撃」はセッションIDを攻撃者が事前に指定する攻撃であり、スクリプトの実行を目的としない。「クリックジャッキング」は透明な要素を重ねて意図しないクリックをさせる攻撃であり、スクリプトの注入とは仕組みが異なる。
問31-4

攻撃者が悪意あるスクリプトを掲示板やコメント欄にあらかじめ書き込み、そのページを閲覧した不特定多数の利用者のブラウザ上でスクリプトが実行されてしまう攻撃を指す用語として、最も適切なものはどれか。

  • ①格納型クロスサイトスクリプティング
  • ②反射型クロスサイトスクリプティング
  • ③SQLインジェクション
  • ④セッションハイジャック
答えと解説を見る
正解 ①格納型クロスサイトスクリプティング
解説
格納型(持続型)クロスサイトスクリプティングは、悪意あるスクリプトを掲示板の投稿欄やコメント欄などを通じてサーバ側のデータベースに保存させ、そのページを閲覧した全ての利用者のブラウザ上でスクリプトが自動的に実行されてしまう攻撃である。攻撃者は特定の利用者に罠のリンクを踏ませる必要がなく、被害が広範囲に及びやすい。

他の選択肢が不適切な理由
「反射型クロスサイトスクリプティング」は罠のリンクを都度クリックさせる必要がある点で格納型と異なる。「SQLインジェクション」はデータベースへ不正な命令を実行させる攻撃であり、スクリプトをブラウザ上で実行させることを主目的としない。「セッションハイジャック」は他人のセッションIDを奪取してなりすます攻撃であり、スクリプトの埋め込みとは異なる手口である。
問41-4

利用者が正規のWebサイトにログインした状態のまま、攻撃者が用意した罠のページを閲覧すると、利用者の意図しないリクエスト(退会処理や送金指示など)がそのサイトへ送信されてしまう攻撃を指す用語として、最も適切なものはどれか。

  • ①クロスサイトスクリプティング(XSS)
  • ②ディレクトリトラバーサル
  • ③クロスサイトリクエストフォージェリ(CSRF)
  • ④OSコマンドインジェクション
答えと解説を見る
正解 ③クロスサイトリクエストフォージェリ(CSRF)
解説
クロスサイトリクエストフォージェリ(CSRF)は、利用者が正規サイトにログイン(セッションを維持)している状態を悪用し、攻撃者が用意した別サイトの罠を閲覧させることで、利用者本人の意図しないリクエストを正規サイトへ強制的に送信させる攻撃である。パスワード変更や送金、退会処理などの重要な処理が不正に実行されるおそれがある。対策としては、リクエストごとに検証するトークン(CSRFトークン)の導入が有効である。

他の選択肢が不適切な理由
「クロスサイトスクリプティング(XSS)」はスクリプトをブラウザ上で実行させる攻撃であり、CSRFのように既存のログインセッションを悪用してリクエストを強制する仕組みとは異なる。「ディレクトリトラバーサル」はファイルパスを操作して不正なファイルにアクセスする攻撃である。「OSコマンドインジェクション」はOSのコマンドを不正に実行させる攻撃であり、いずれもログインセッションの悪用を主眼とする攻撃ではない。
問51-4

URLのパラメータに「../」のような文字列を含めることで、公開を意図していないディレクトリの上位階層にあるファイルへ不正にアクセスしようとする攻撃を指す用語として、最も適切なものはどれか。

  • ①クリックジャッキング
  • ②ディレクトリトラバーサル
  • ③セッション固定化攻撃
  • ④クロスサイトリクエストフォージェリ
答えと解説を見る
正解 ②ディレクトリトラバーサル
解説
ディレクトリトラバーサル(パストラバーサル)は、ファイル名を指定するパラメータに「../」(親ディレクトリへの移動を表す文字列)などを含めることで、Webアプリケーションが本来公開を意図していない上位階層のディレクトリにあるファイル(設定ファイルやパスワードファイルなど)へ不正にアクセスしようとする攻撃である。対策としては、入力されたファイルパスの正規化・検証や、アクセスを許可するディレクトリの制限が有効である。

他の選択肢が不適切な理由
「クリックジャッキング」は透明な要素を重ねて意図しないクリックをさせる攻撃である。「セッション固定化攻撃」は攻撃者が指定したセッションIDを利用者に使わせる攻撃である。「クロスサイトリクエストフォージェリ」はログインセッションを悪用して意図しないリクエストを送らせる攻撃であり、いずれもファイルパスの操作によるファイルアクセスを目的とする攻撃ではない。
問61-4

Webアプリケーションが外部から入力された文字列をそのままシェルの引数として渡してしまう脆弱性を突き、サーバ上で任意のOSコマンドを実行させる攻撃を指す用語として、最も適切なものはどれか。

  • ①SQLインジェクション
  • ②セッションハイジャック
  • ③ディレクトリトラバーサル
  • ④OSコマンドインジェクション
答えと解説を見る
正解 ④OSコマンドインジェクション
解説
OSコマンドインジェクションは、Webアプリケーションが外部からの入力値をチェックせずにOSのコマンドとして実行してしまう脆弱性を悪用し、攻撃者が任意のOSコマンドをサーバ上で実行させる攻撃である。ファイルの削除や不正プログラムのダウンロード・実行など、サーバの制御を奪われる深刻な被害につながるおそれがある。対策としては、シェルを呼び出す実装を避け、外部入力を直接コマンドの一部として使用しないことが有効である。

他の選択肢が不適切な理由
「SQLインジェクション」はデータベースへの不正な命令実行を目的とする攻撃であり、標的とするインタプリタが異なる。「セッションハイジャック」は他人のセッションIDを奪って利用者になりすます攻撃である。「ディレクトリトラバーサル」はファイルパスの操作による不正なファイルアクセスを目的とする攻撃であり、いずれもOSコマンドの実行そのものを目的とする攻撃ではない。
問71-4

攻撃者が第三者のセッションIDを盗聴や推測などによって不正に取得し、そのIDを使って正規の利用者になりすましてWebサービスを利用する攻撃を指す用語として、最も適切なものはどれか。

  • ①セッションハイジャック
  • ②セッション固定化攻撃
  • ③クリックジャッキング
  • ④ドライブバイダウンロード
答えと解説を見る
正解 ①セッションハイジャック
解説
セッションハイジャックは、通信の盗聴や推測されやすいセッションIDの発行方式などを悪用し、他人が現在使用中のセッションIDを不正に取得した上で、そのIDを用いて正規の利用者になりすましてログイン後の画面を操作する攻撃である。対策としては、セッションIDを推測困難な値にすることや、通信の暗号化(HTTPS化)が有効である。

他の選択肢が不適切な理由
「セッション固定化攻撃」は、攻撃者が事前に用意したセッションIDを利用者に使わせ、利用者がログインした後にそのセッションIDを使ってなりすます攻撃であり、既存のセッションIDを盗む点で本問の手口とは異なる。「クリックジャッキング」は透明な要素で意図しないクリックをさせる攻撃であり、セッションIDの奪取を直接の目的としない。「ドライブバイダウンロード」はWebサイトの閲覧だけでマルウェアを自動的にダウンロードさせる攻撃であり、セッションの奪取とは異なる。
問81-4

攻撃者が正規のログインページで発行させたセッションIDを、利用者に強制的に使わせておき、その利用者がそのIDでログインした瞬間を狙って同じIDでなりすます攻撃を指す用語として、最も適切なものはどれか。

  • ①セッションハイジャック
  • ②クロスサイトスクリプティング
  • ③セッション固定化攻撃
  • ④OSコマンドインジェクション
答えと解説を見る
正解 ③セッション固定化攻撃
解説
セッション固定化攻撃(セッションフィクセーション)は、攻撃者があらかじめ取得又は指定したセッションIDを罠のリンクなどを通じて利用者に使わせておき、その利用者が正規のログインを済ませた後も同じセッションIDが有効なままである脆弱性を突いて、攻撃者が同じIDを使ってログイン後の状態になりすます攻撃である。対策としては、ログイン成功時にセッションIDを必ず再発行することが有効である。

他の選択肢が不適切な理由
「セッションハイジャック」は既に有効な他人のセッションIDを盗聴・推測等で盗み取る点で、あらかじめIDを固定して使わせるセッション固定化攻撃とは手口が異なる。「クロスサイトスクリプティング」はスクリプトをブラウザ上で実行させる攻撃であり、セッションIDを固定する手口とは異なる。「OSコマンドインジェクション」はサーバ上でOSコマンドを実行させる攻撃であり、セッション管理の不備を突く攻撃ではない。
問91-4

正規のWebページの上に透明化した別のボタンやリンクを重ねて配置し、利用者が意図せずその隠れた要素をクリックしてしまうよう誘導する攻撃を指す用語として、最も適切なものはどれか。

  • ①セッションハイジャック
  • ②クリックジャッキング
  • ③ディレクトリトラバーサル
  • ④クロスサイトリクエストフォージェリ
答えと解説を見る
正解 ②クリックジャッキング
解説
クリックジャッキングは、正規のWebページ(例えばSNSの「いいね」ボタンや会員登録ボタン等)の上に、攻撃者が用意した透明な別のiframe等を重ねて表示し、利用者には無害なコンテンツをクリックしているように見せかけながら、実際には隠れた要素をクリックさせて意図しない操作(意図しない投稿や設定変更など)を実行させる攻撃である。対策としては、Webサイト側でフレーム内への表示を制限するX-Frame-Options等のヘッダを設定することが有効である。

他の選択肢が不適切な理由
「セッションハイジャック」はセッションIDの窃取によるなりすましを目的とする攻撃である。「ディレクトリトラバーサル」はファイルパスの操作による不正なファイルアクセスを目的とする攻撃である。「クロスサイトリクエストフォージェリ」は既存のログインセッションを悪用して意図しないリクエストを送らせる攻撃であり、透明な要素の重ね合わせによるクリック誘導とは仕組みが異なる。
問101-4

SQLインジェクションとクロスサイトスクリプティング(XSS)の違いに関する説明として、最も適切なものはどれか。

  • ①SQLインジェクションは常に無害であるのに対し、XSSは常にサーバのハードウェアを物理的に破壊する
  • ②SQLインジェクションはネットワーク機器のみを標的とし、XSSはデータベースのみを標的とする
  • ③SQLインジェクションとXSSは全く同じ手口であり、名称が異なるだけで区別する意味はない
  • ④SQLインジェクションはDBへ不正命令を実行させ、XSSはブラウザ上で不正スクリプトを実行させる
答えと解説を見る
正解 ④SQLインジェクションはDBへ不正命令を実行させ、XSSはブラウザ上で不正スクリプトを実行させる
解説
SQLインジェクションは、Webアプリケーションの入力値を悪用してデータベースに不正なSQL文を実行させ、データの窃取・改ざん・削除などを狙う攻撃である。一方、XSSはWebページに悪意あるスクリプトを混入させ、そのページを閲覧した利用者のブラウザ上でスクリプトを実行させることでCookieの窃取や偽ページの表示などを狙う攻撃であり、不正な処理を実行させる対象(データベースかブラウザか)が異なる。

他の選択肢が不適切な理由
いずれの攻撃も個人情報漏えい等の重大な被害につながり得るため「常に無害」という記述は誤りであり、また物理的な破壊を伴う攻撃でもない。SQLインジェクションはネットワーク機器そのものではなくデータベースと連携するWebアプリケーションを標的とする点、XSSはデータベースではなくブラウザでの実行を狙う点で、標的の説明も誤っている。両者は脆弱性の悪用箇所も被害の内容も異なるため、同一の手口とはいえない。

情報セキュリティマネジメント試験の対策問題(全480問)に戻る

※本ページはアクセス解析のためCookieを利用し、その情報を外部(Google)へ送信しています。

※本ページの問題・解説は、生成AI(人工知能)を活用して作成しています。