情報処理安全確保支援士試験 情報処理安全確保支援士試験 平成30年度春期 午前Ⅱ 問2: Web サーバのログを分析したところ,Web サーバへの攻撃と思われる HTTP リクエストヘッダが記録されていた。次の HTTP リクエストヘッダから推測でき
←情報処理安全確保支援士試験 平成30年度春期 午前Ⅱ
Web サーバのログを分析したところ,Web サーバへの攻撃と思われる リクエストヘッダが記録されていた。次の HTTP リクエストヘッダから推測できる,攻撃者が悪用しようとしている脆弱性はどれか。ここで,HTTP リクエストヘッダはデコード済みである。
〔HTTP リクエストヘッダの部分〕
```
GET /cgi-bin/submit.cgi?user=;cat /etc/passwd HTTP/1.1
Accept: */*
Accept-Language: ja
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: (省略)
Host: test.example.com
Connection: Keep-Alive
```
問題本文
Web サーバのログを分析したところ,Web サーバへの攻撃と思われる HTTP リクエストヘッダが記録されていた。次の HTTP リクエストヘッダから推測できる,攻撃者が悪用しようとしている脆弱性はどれか。ここで,HTTP リクエストヘッダはデコード済みである。 〔HTTP リクエストヘッダの部分〕 GET /cgi-bin/submit.cgi?user=;cat /etc/passwd HTTP/1.1 Accept: / Accept-Language: ja UA-CPU: x86 Accept-Encoding: gzip, deflate User-Agent: (省略) Host: test.example.com Connection: Keep-Alive
選択肢
- ア.HTTP ヘッダインジェクション
- イ.OS コマンドインジェクション
- ウ.SQL インジェクション
- エ.クロスサイトスクリプティング
解説
リクエスト中のuser=;cat /etc/passwd は、URLパラメータにセミコロンでOSコマンドを連結し、Webサーバ側でシェル経由でcatを実行させようとする典型的なOSコマンドインジェクションである。/etc/passwdの読み出しを狙う点もそれを裏付ける。よって正解はイ。実務では外部入力をシェルに渡さない設計や、シェルを起動しないAPIの利用、入力検証で防ぐ。
選択肢ごとの解説
- ア.HTTPヘッダインジェクションは改行を注入しヘッダを偽造する攻撃で、コマンド連結のこの例とは異なる。
- イ.セミコロンでcatコマンドを連結しシェルで実行させようとしており、OSコマンドインジェクションで正解。
- ウ.SQL文の操作を狙う痕跡はなく、/etc/passwdの取得を狙う点からSQLインジェクションではない。
- エ.スクリプトを注入し他利用者のブラウザで実行させるXSSの特徴がなく該当しない。
情報処理安全確保支援士試験 平成30年度春期 午前Ⅱ の過去問一覧へ戻る・問2