PHP 5.6.x < 5.6.23 の複数の脆弱性

critical Nessus プラグイン ID 91898

概要

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

説明

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

- ext/phar/phar_object.c ファイル内の phar_extract_file() 関数に無効な解放の欠陥が存在します。これにより、認証されていないリモートの攻撃者が詳細不明な影響を及ぼす可能性があります。(CVE-2016-4473)

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

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

- コールバック実行失敗を処理する際に、
ファイル ext/mbstring/php_mbregex.c の中の _php_mb_regex_ereg_replace_exec() 関数に二重解放のエラーが存在します。認証されていないリモート攻撃者が、この脆弱性を悪用して、任意のコードを実行する可能性があります。
(CVE-2016-5768)

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

- int/size_t の型の取り違え(Type Confusion)エラーにより誘発されて、ファイル ext/spl/spl_directory.c 内に整数オーバーフロー状態が存在し、認証されていないリモートの攻撃者が詳細不明な影響を及ぼすことが可能です。
(CVE-2016-5770)

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

特別に細工された XML コンテンツを処理する際に、ファイル ext/wddx/wddx.c 内の php_wddx_process_data() 関数に二重解放のエラーが存在します。認証されていないリモート攻撃者が、この脆弱性を悪用して、任意のコードを実行する可能性があります。
(CVE-2016-5772)

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

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

- ファイル ext/gd/libgd/gd_topal.c 内の pass2_no_dither() 関数に領域外読み取りエラーが存在し、認証されていないリモートの攻撃者がサービス拒否状態を引き起こしたり、メモリの内容を漏洩させることが可能です。(VulnDB 140379)

- ユーザー指定入力の検証が不適切なために、文字列長を扱う際に、ファイル ext/standard/string.c 内に整数オーバーフロー状態が存在します。認証されていないリモートの攻撃者はこれを悪用して、詳細不明な影響を与える可能性があります。(VulnDB 140380)

ファイル ext/gd/libgd/gd_interpolation.c の中の
_gdScaleVert() 関数に NULL ポインターデリファレンスの欠陥が存在し、_gdContributionsCalc の戻り値を処理する際に引き起こされます。認証されていないリモートの攻撃者がこれを悪用して、サービス拒否状態を引き起こす可能性があります。(VulnDB 140382)

- ユーザー指定入力の検証が不適切なために、文字列値を扱う際に、ファイル ext/standard/string.c 内の複数の関数に整数オーバーフロー状態が存在します。認証されていないリモートの攻撃者はこれを悪用して、詳細不明な影響を与える可能性があります。
(VulnDB 140386)

Nessus はこれらの問題に対してテストされていませんが、その代わりにアプリケーションの自己報告されたバージョン番号のみに依存していることに、注意してください。

ソリューション

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

参考資料

http://php.net/ChangeLog-5.php#5.6.23

プラグインの詳細

深刻度: Critical

ID: 91898

ファイル名: php_5_6_23.nasl

バージョン: 1.12

タイプ: remote

ファミリー: CGI abuses

公開日: 2016/7/1

更新日: 2022/4/11

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

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

リスク情報

VPR

リスクファクター: Medium

スコア: 6.7

CVSS v2

リスクファクター: High

基本値: 7.5

現状値: 5.5

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

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

CVSS v3

リスクファクター: Critical

基本値: 9.8

現状値: 8.5

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

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

脆弱性情報

CPE: cpe:/a:php:php

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

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

パッチ公開日: 2016/6/23

脆弱性公開日: 2016/6/21

参照情報

CVE: CVE-2016-4473, CVE-2016-5766, CVE-2016-5767, CVE-2016-5768, CVE-2016-5769, CVE-2016-5770, CVE-2016-5771, CVE-2016-5772, CVE-2016-5773