SC情報処理安全確保支援士試験 午前Ⅱ

平成30年度春期 情報処理安全確保支援士 午前Ⅱ 問2

問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。

問題

Webサーバのログを分析したところ、 Webサーバへの攻撃と思われるHTTPリクエストヘッダが記録されていた。 次のHTTPリクエストヘッダから推測できる、 攻撃者が悪用しようとしている騰慌性はどれか。ここで、 HTTPリクエストヘッダはデコード済みである。

選択肢

  1. ア
    HTTPヘッダインジェクション
  2. イ
    OSコマンドインジェクション
  3. ウ
    SQLインジェクション
  4. エ
    クロスサイトスクリプティング =8叶
解き方のヒントを見る

HTTPヘッダに仕込まれた“OSへの命令”を見抜こう

HTTPヘッダの値に、OSのコマンドっぽい文字列をこっそり混ぜて、外部プログラムを実行させようとしているなら、狙いはOSコマンドインジェクションだよ。データベースをだますSQLインジェクションや、画面に悪いスクリプトを出すXSSとは攻撃する場所が違うんだ。

この問題で問われていること

ポイントは、その入力がWebアプリの中でどこに渡されそうかを想像することだよ。もし入力がOSコマンドの実行処理に流れ込みそうなら、「これはOSコマンドインジェクションだな」と判断しよう。

OS Command Injection via Header Input

if attacker-controlled header values are intended to be executed by the OS、 the vulnerability being abused is OS command injection

attacker input in header\nreaches system command execution\nnot SQL injection\nnot XSS

確認ポイント

  • 実行先が OS コマンドかを見る。
  • ヘッダ入力でも分類は OS コマンドインジェクション。
  • SQL/XSS と混同しない。
正解と解説を見る

正解

イ

出典

問題文と解答は IPA 公開の過去問題冊子・解答例を基にしています。

選択肢ア

これは不正解だよ。HTTPヘッダインジェクションは、HTTPレスポンスのヘッダ部分に改行などを混ぜて、別のヘッダや内容を勝手に追加させる攻撃なんだ。たとえるなら、封筒の宛名欄に勝手な指示を書き足して、配達ルールを変えようとする感じだよ。OSの命令をサーバに実行させる攻撃ではないので、今回は当てはまらないよ。

選択肢イ(正解)

これは正解だよ。OSコマンドインジェクションは、Webアプリが受け取った入力をそのままサーバの命令として使ってしまい、攻撃者が余計な命令を混ぜ込める攻撃なんだ。たとえるなら、窓口で「この荷物を運んで」と頼まれた係員が、伝票に書かれた怪しい追記まで確認せず全部実行してしまう感じだよ。サーバ上のOSコマンドを不正に実行させる話なので、これが当てはまるよ。

選択肢ウ

これは不正解だよ。SQLインジェクションは、データベースへの問い合わせ文に悪い条件を混ぜ込む攻撃なんだ。たとえるなら、図書館の検索窓に普通の本の名前ではなく「全部の貸出記録を見せて」といった変な指示を混ぜる感じだよ。今回の話はデータベース操作ではなく、OSコマンドの不正実行なので違うよ。

選択肢エ

これは不正解だよ。クロスサイトスクリプティングは、利用者のブラウザ上で悪いスクリプトを実行させる攻撃なんだ。たとえるなら、掲示板に貼られたメモを読んだ人の目の前で、勝手にいたずらが起きるようなものだよ。今回のポイントはブラウザでスクリプトを動かすことではなく、サーバ側でOSの命令を実行させることなので違うよ。

出典:独立行政法人 情報処理推進機構(IPA)平成30年度春期 情報処理安全確保支援士試験 午前Ⅱ 問2(公式資料:問題冊子(PDF) / 解答例)

関連する過去問一覧

IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針