PHP 7.0.x < 7.0.9 の複数の脆弱性(httpoxy)

critical Nessus プラグイン ID 92556

概要

リモート Web サーバー上で実行している PHP のバージョンは、以下の複数の脆弱性の影響を受けます:

説明

バナーによると、リモート Web サーバーで実行している PHP のバージョンは、7.0.9 より前の 7.0.x です。したがって、以下の複数の脆弱性による影響を受けます:

- RFC 3875 セクション 4.1.18 にしたがって名前空間の競合を適切に解決できないため、「httpoxy」として知られる中間者の脆弱性が存在します。HTTP_PROXY 環境変数が、HTTP リクエストの「Proxy」ヘッダーの信頼できないユーザーデータに基づいて設定されます。HTTP_PROXY 環境変数が、リモートプロキシサーバーを指定するために、一部の Web クライアントライブラリにより使用されます。認証されていないリモートの攻撃者がこれを悪用し、HTTP リクエストの細工された「Proxy」ヘッダーを通じて、アプリケーションの内部 HTTP トラフィックを任意のプロキシサーバーにリダイレクトする可能性があります。このプロキシサーバーは、観察と操作が行われる可能性があります。(CVE-2016-5385)

- エラー状態の処理が不適切なために、オーバーフロー状態が ext/bz2/bz2.c ファイルの php_bz2iop_read() 関数に存在します。認証されていないリモートの攻撃者がこれを悪用し、細工されたリクエストを通じて、任意のコードを実行する可能性があります。(CVE-2016-5399)

- ユーザー指定の入力が不適切に検証されているため、GD グラフィックライブラリ(libgd)に欠陥が存在します。これは特に gd_interpolation.c ファイルの gdImageScaleTwoPass() 関数に存在します。認証されていないリモートの攻撃者がこれを悪用して、サービス拒否状態を引き起こす可能性があります。(CVE-2016-6207)

- ユーザー指定の入力が不適切に検証されているため、Zend/zend_virtual_cwd.c ファイルの virtual_file_ex() 関数に整数オーバーフロー状態が存在します。認証されていないリモートの攻撃者がこれを悪用し、サービス拒否状態を引き起こすことや、任意のコードを実行することができます。(CVE-2016-6289)

- 「var_hash」破壊を処理する際に、use-after-free エラーが ext/session/session.c ファイルに存在します。認証されていないリモートの攻撃者がこれを悪用して、すでに解放されたメモリを逆参照して、任意のコードを実行する可能性があります。
(CVE-2016-6290)

- ext/exif/exif.c ファイルの exif_process_IFD_in_MAKERNOTE() 関数に領域外読み取りエラーが存在します。認証されていないリモートの攻撃者がこれを悪用して、サービス拒否状態を引き起こしたり、メモリコンテンツを漏洩したりする可能性があります。(CVE-2016-6291)

- ext/exif/exif.c ファイルの exif_process_user_comment() 関数に NULL ポインターデリファレンスの欠陥が存在します。認証されていないリモートの攻撃者がこれを悪用して、サービス拒否状態を引き起こす可能性があります。
(CVE-2016-6292)

- ext/intl/locale/locale_methods.c ファイルの locale_accept_from_http() 関数に複数の領域外読み取りエラーが存在します。認証されていないリモートの攻撃者がこれらを悪用して、サービス拒否状態を引き起こしたり、メモリコンテンツを漏洩したりする可能性があります。
(CVE-2016-6293、CVE-2016-6294)

- ユーザー指定の入力の逆シリアル化中にガベージコレクションを処理する際に、use-after-free エラーが ext/snmp/snmp.c ファイルに存在します。認証されていないリモートの攻撃者がこれを悪用して、すでに解放されたメモリを逆参照して、任意のコードを実行する可能性があります。(CVE-2016-6295)

- ユーザー指定入力の検証が不適切であるため、simplestring.c ファイルの simplestring_addn() 関数にヒープベースのバッファオーバーフローの状態が存在します。認証されていないリモートの攻撃者がこれを悪用し、サービス拒否状態を引き起こすことや、任意のコードを実行することができます。(CVE-2016-6296)

- zip ストリームを処理する際にユーザー指定入力の検証が不適切なために、ext/zip/zip_stream.c ファイルの php_stream_zip_opener() 関数に整数オーバーフロー状態が存在します。認証されていないリモートの攻撃者がこれを悪用し、サービス拒否状態を引き起こすことや、任意のコードを実行することができます。(CVE-2016-6297)

- 透明色を処理する際に、GD グラフィックライブラリ(libgd)に領域外読み取りのエラーが存在します。これは特に、gd_interpolation.c ファイルの gdImageScaleBilinearPalette() 関数に存在します。認証されていないリモートの攻撃者がこれを悪用して、サービス拒否状態を引き起こしたり、メモリコンテンツを漏洩したりする可能性があります。(VulnDB 141674)

- ユーザー指定入力の検証が不適切であるため、ext/mcrypt/mcrypt.c ファイルの mdecrypt_generic() 関数にヒープベースのバッファオーバーフローの状態が存在します。認証されていないリモートの攻撃者がこれを悪用し、サービス拒否状態を引き起こすことや、任意のコードを実行することができます。(VulnDB 141953)

- 文字列の長さを処理する際に、ファイル ext/curl/interface.c 内の curl_unescape() 関数に欠陥が存在します。
認証されていないリモートの攻撃者が、これを悪用して、ヒープを破損させることで、サービス拒否状態を引き起こす可能性があります。(VulnDB 141955)

- ユーザー指定の入力を不適切に検証しているため、ファイル ext/mcrypt/mcrypt.c 内の mcrypt_generic() 関数に、ヒープベースのバッファオーバーフロー状態が存在します。認証されていないリモートの攻撃者がこれを悪用し、サービス拒否状態を引き起こすことや、任意のコードを実行することができます。(VulnDB 141956)

- マイナスの透明色が不適切に処理されているため、gdImageColorTransparent() 関数の GD グラフィックライブラリ(libgd)に NULL 書き込みの欠陥が存在します。リモートの攻撃者がこれを悪用して、メモリコンテンツを漏洩させる可能性があります。(VulnDB 142104)

ソリューション

PHP バージョン 7.0.9 または以降にアップグレードしてください。

参考資料

http://php.net/ChangeLog-7.php#7.0.9

https://httpoxy.org

プラグインの詳細

深刻度: Critical

ID: 92556

ファイル名: php_7_0_9.nasl

バージョン: 1.12

タイプ: remote

ファミリー: CGI abuses

公開日: 2016/7/26

更新日: 2022/4/11

設定: 徹底したチェックを有効にする

サポートされているセンサー: Nessus

リスク情報

VPR

リスクファクター: Medium

スコア: 6.7

CVSS v2

リスクファクター: High

基本値: 7.5

現状値: 5.9

ベクトル: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS スコアのソース: CVE-2016-6296

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 8.8

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

現状ベクトル: CVSS:3.0/E:P/RL:O/RC:C

脆弱性情報

CPE: cpe:/a:php:php

必要な KB アイテム: www/PHP

エクスプロイトが利用可能: true

エクスプロイトの容易さ: No exploit is required

パッチ公開日: 2016/7/21

脆弱性公開日: 2016/7/18

参照情報

CVE: CVE-2016-5385, CVE-2016-5399, CVE-2016-6207, CVE-2016-6289, CVE-2016-6290, CVE-2016-6291, CVE-2016-6292, CVE-2016-6293, CVE-2016-6294, CVE-2016-6295, CVE-2016-6296, CVE-2016-6297

BID: 91821, 92051, 92073, 92074, 92078, 92094, 92095, 92097, 92099

CERT: 797896