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-Agent:(省略)
Host: test.example.com
Connection: Keep-Alive
ア |
HTTPヘッダインジェクション |
|
イ |
OSコマンドインジェクション |
ウ |
SQLインジェクション |
|
エ |
クロスサイトスクリプション |
答え イ
【解説】
ヘッダーリクエストの
GET /cgi-bin/submit.cgi?user=;cat /etc/passwd HTTP/1.1
は、ファイルの内容を閲覧するコマンドである“cat”でサーバのパスワードを管理しているファイル“/etc/passwd”を指定しているので、これはサーバのパスワードファイルを盗みだそうというOSコマンドインジェクション(イ)になります。
【キーワード】
・OSコマンドインジェクション
【キーワードの解説】
- OSコマンドインジェクション(OS command injection)
Webページの利用者が入力するパラメータとしてOSコマンドを挿入し、意図しないOSコマンドを実行させることを狙った攻撃で、サーバのroot権限が乗っ取られたりする足がかりになる非常に危険な問題です。
対策としてはユーザーが入力したパラメータに対しサニタイジング(sanitizing、無毒化)を行い、OSコマンドなどが実行されないようにしたり、サーバで動作するサービスの権限を最低限のものにするなどがあります。
もっと、「OSコマンドインジェクション」について調べてみよう。
戻る
一覧へ
次へ
|