Please note that JavaScript and style sheet are used in this website,
Due to unadaptability of the style sheet with the browser used in your computer, pages may not look as original.
Even in such a case, however, the contents can be used safely.

CGI ウェブサーバがヘッダ Proxy の値を環境変数 HTTP_PROXY に設定する脆弱性

掲載番号:NV16-020
脆弱性情報識別番号:JVNVU91485132, VU#797896

概要

CGI または類似のコンテキストで動作しているウェブサーバには、クライアントが指定したヘッダ Proxy の値を内部の環境変数 HTTP_PROXY に登録してしまう脆弱性が存在します。
この脆弱性によって、内部のサブリクエストに中間者攻撃 (man-in-the-middle attack) を受けたり、サーバを任意のホストに接続させられたりする可能性があります。

対象製品

WebOTX

影響の有無

影響あり

(1)、(2)のいずれか、または両方に合致する場合、本脆弱性の影響を受ける可能性があります。

(1) 以下の条件すべてに合致する場合
WebOTX Webサーバ1.3、2.0、2.2、2.4を使用している
WebOTX Webサーバ上で動作するCGIアプリケーションにおいて、Webサーバの環境変数 HTTP_PROXYを参照し、それをもとに通信を行っている場合

(2) 以下の条件に合致する場合
Webコンテナが提供するCGIServlet使用し実行したCGIアプリケーションが環境変数HTTP_PROXYを参照し、後続の処理に利用している場合

本脆弱性に対する WebOTX の最新の対応状況等は下記からご確認いただけます。
https://www.support.nec.co.jp/View.aspx?id=3010101876
 

対象となる製品のバージョン

  • WebOTX Web Edition V4.1~V6.5
  • WebOTX Standard-J Edition V4.1~V6.5
  • WebOTX Standard Edition V4.1~V6.5
  • WebOTX Enterprise Edition V4.1~V6.5
  • WebOTX Application Server Web Edition V7.1~V8.1
  • WebOTX Application Server Standard-J Edition V7.1~V8.1
  • WebOTX Application Server Express V8.2~V9.4
  • WebOTX Application Server Foundation V8.2~V8.5
  • WebOTX Application Server Standard V8.2~V9.4
  • WebOTX Application Server Enterprise V8.2~V9.4
  • WebOTX 開発環境 V6.1~V6.5
  • WebOTX Developer V7.1~V8.1
  • WebOTX Developer (with Developer's Studio) V8.2~V9.4
  • WebOTX Enterprise Service Bus V6.4~V9.3
  • WebOTX Portal V8.2~V9.3
  • WebOTX SIP Application Server Standard Edition V7.1~V8.1

対処方法

[対策]
  • WebOTX Webサーバ2.2/2.4を使用している場合
今後、本脆弱性を修正したパッチをリリースする予定です。
なお、パッチモジュールは製品保守契約を結んでいただいたお客様に限定して提供させていただいています。
まだ契約がお済でないお客様は、保守契約締結をお願いします。

[回避策]
  • WebOTX Webサーバを利用している場合(全バージョン共通)
ファイアウォールなどを用いて WebサーバからのHTTPアウトバウンド通信を必要最小限に制限します。

  • WebOTX Webサーバ2.0/2.2/2.4を使用している場合
リクエストに含まれるProxyヘッダを無効にします。
設定方法は、WebOTXのバージョンによって異なります。

  • WebOTX V6.5~V9.4 をご利用の場合
1. Webサーバの設定ファイル
<WebOTXインストールディレクトリ>/domains/<ドメイン名>/config/WebServer/httpd.confにて、次の定義を行います。
1-1. コメントアウトを解除(先頭の#を削除)します。
#LoadModule headers_module /WebServer*/modules/mod_headers.so

LoadModule headers_module /WebServer*/modules/mod_headers.so

※ "WebServer*"は、Webサーバのバージョン毎に異なり、それぞれ、 次のようになります。
Webサーバ 2.0: WebServer2
Webサーバ 2.2: WebServer22
Webサーバ 2.4: WebServer24
1-2. Proxy ヘッダを無効にするための定義を追加します。
RequestHeader unset Proxy
2. Webサーバを再起動します。
otxadmin> login --user admin --password **** --port 6212
otxadmin> invoke server.WebServer.stop
otxadmin> invoke server.WebServer.start

  • WebOTX V6.1~V6.4 をご利用の場合
1. Webサーバの設定ファイル <WebOTXインストールディレクトリ>/domains/<ドメイン名>/config/WebServer/httpd.confにて、次の定義を追加します。
※ mod_headers.so は、当該バージョンのWebOTX Webサーバには バンドルしておりません。Apache.orgのサイト等から、別途入手する必要があります。
※ "{path-to}"には、mod_headers.soが存在するディレクトリを 指定してください。

2. Webサーバを再起動します。
otxadmin> login --user admin --password **** --port 6212
otxadmin> invoke server.WebServer.stop
otxadmin> invoke server.WebServer.start

  • CGIServlet をご使用の場合
WebOTXは、全バージョンでデフォルト設定ではCGIServlet機能は無効になっています。
CGIServlet機能の利用有無は以下のファイルを確認してください。

  • V5.1~V5.3
{Webコンテナインストールディレクトリ}/conf/web.xml
  • V6.1~V9.4
{ドメインインストールディレクトリ}/config/default-web.xml
以下の定義が有効になっている場合、CGIServletが有効となっています。
<servle>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
・・・・・
<servlet>
CGIServletを利用したアプリケーションが"proxy"ヘッダを使用している場合、Servletのフィルタ機能を利用して“proxy”ヘッダを使用しないようにするか、チェックする機能を実装してください。
フィルタ機能については以下を参照してください。

Servlet 3.0 (6. Filtering)
https://jcp.org/en/jsr/detail?id=315

Servlet 2.4/2.5 (6. Filtering)
https://jcp.org/en/jsr/detail?id=154

Servlet 2.3 (6. Filtering)
https://jcp.org/en/jsr/detail?id=53


参考情報

Japan Vulnerability Notes JVNVU#91485132:
CGI ウェブサーバがヘッダ Proxy の値を環境変数 HTTP_PROXY に設定する脆弱性
https://jvn.jp/vu/JVNVU91485132/

CERT/CC Vulnerability Note VU#797896:
CGI web servers assign Proxy header values from client requests to internal HTTP_PROXY environment variables
https://www.kb.cert.org/vuls/id/797896

CVE-2016-5385, CVE-2016-5386, CVE-2016-5387, CVE-2016-5388, CVE-2016-1000109, CVE-2016-1000110:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5385
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5386
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5387
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5388
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1000109
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1000110

更新情報

2016/10/31
WebOTX を登録しました。