PHP 5.6.x < 5.6.12 多种漏洞

high Nessus 插件 ID 85300

简介

远程 Web 服务器使用受多种漏洞影响的 PHP 版本。

描述

根据其标题,远程 web 服务器上运行的 PHP 5.6.x 版本低于 5.6.12。因此,它受到多种漏洞的影响:

- 由于未正确审查对 unserialize() 函数的输入,文件 spl_dllist.c 中存在一个释放后使用错误。攻击者可利用此问题,使用特别构建的 SplDoublyLinkedList 对象取消引用释放的内存,从而执行任意代码。
(OSVDB 125849)

- 由于未正确审查对 unserialize() 函数的输入,文件 spl_observer.c 中存在一个释放后使用错误。攻击者可利用此问题,使用特别构建的 SplObjectStorage 对象取消引用释放的内存,从而执行任意代码。
(OSVDB 125850)

- 由于未正确审查对 unserialize() 函数的输入,文件 spl_array.c 中存在一个释放后使用错误。攻击者可利用此问题,使用特别构建的 SplArrayObject 对象取消引用释放的内存,从而执行任意代码。
(OSVDB 125851)

由于在递归方法调用期间未正确使用函数 unserialize(),文件 zend_exceptions.c 中存在缺陷。远程攻击者可利用此缺陷导致使用 PHP 的应用程序崩溃。(OSVDB 125852)

由于函数 unserialize() 和 __toString() 的类型检查不充分,文件 zend_exceptions.c 中存在缺陷。远程攻击者可利用此缺陷导致空指针取消引用或执行意外方法,从而导致使用 PHP 的应用程序崩溃。(OSVDB 125853)

由于未能正确审查用户提供的输入,文件 phar_object.c 中存在路径遍历缺陷。攻击者可利用此缺陷写入任意文件。
(OSVDB 125854)

处理 zend_hash_get_current_key 或“Z*”调用时,文件 php_http.c 的 _call() 方法中存在多种类型混淆缺陷。攻击者可利用此缺陷泄露内存内容或导致使用 PHP 的应用程序崩溃。(OSVDB 125855)

由于未正确审查对 unserialize() 函数的输入,文件 spl_array.c 中存在一个悬摆指针错误。攻击者可利用此问题,使用特别构建的 SplDoublyLinkedList 对象,获取对释放指针的控制从而执行任意代码。(OSVDB 125856)

- 由于通过 imagefilltoborder() 函数未正确处理包含较大负坐标的图像,文件 gd.c 中存在缺陷。攻击者可利用此缺陷造成堆栈溢出,进而导致使用 PHP 的应用程序崩溃。(OSVDB 125857)

- 当 odbc_fetch_array() 函数处理定义为 NVARCHAR(MAX) 的列时,文件 php_odbc.c 中存在缺陷。攻击者可利用此缺陷导致使用 PHP 的应用程序崩溃。(OSVDB 125858)

文件 openssl.c 中的 openssl_random_pseudo_bytes() 函数生成的数字随机程度不足。
攻击者可利用此漏洞更轻松地预测结果,从而执行进一步攻击。(OSVDB 125859)

- 由于未正确验证用户提供的输入,spl_observer.c 中的 unserialize() 函数存在一个释放后使用错误。远程攻击者可利用此问题取消引用已经释放的内存,从而导致执行任意代码。
(OSVDB 126951)

由于未能正确验证通过标头字段传递的输入,soap.c 的 serialize_function_call() 函数中存在类型混淆缺陷。远程攻击者可利用此缺陷执行任意代码。(OSVDB 126952)

- 反序列化用户提供的输入期间,spl_dllist.c 中的 unserialize() 函数存在一个释放后使用错误。远程攻击者可利用此问题取消引用已经释放的内存,从而导致执行任意代码。(OSVDB 126954)

- 由于未正确验证用户提供的输入,gmp.c 中的 gmp_unserialize() 函数存在一个释放后使用错误。远程攻击者可利用此问题取消引用已经释放的内存,从而导致执行任意代码。
(OSVDB 126960)

zend_hash.c 的 zend_hash_compare() 函数中存在比较数组时将会触发的整数截断缺陷。远程攻击者可利用此缺陷导致比较期间无法正确匹配数组。(OSVDB 127367)

请注意,Nessus 并未测试这些问题,而是只依赖于应用程序自我报告的版本号。

解决方案

升级至 PHP 版本 5.6.12 或更新版。

另见

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

https://seclists.org/fulldisclosure/2015/Aug/17

https://seclists.org/fulldisclosure/2015/Aug/18

https://seclists.org/fulldisclosure/2015/Aug/19

https://bugs.php.net/bug.php?id=69793

https://bugs.php.net/bug.php?id=70121

插件详情

严重性: High

ID: 85300

文件名: php_5_6_12.nasl

版本: 1.14

类型: remote

系列: CGI abuses

发布时间: 2015/8/11

最近更新时间: 2022/4/11

配置: 启用彻底检查

风险信息

VPR

风险因素: Low

分数: 3.6

CVSS v2

风险因素: High

基本分数: 7.5

时间分数: 5.5

矢量: AV:N/AC:L/Au:N/C:P/I:P/A:P

时间矢量: E:U/RL:OF/RC:C

CVSS 分数来源: CVE-2015-6831

CVSS v3

风险因素: High

基本分数: 7.3

时间分数: 6.4

矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L

时间矢量: E:U/RL:O/RC:C

漏洞信息

CPE: cpe:/a:php:php

必需的 KB 项: www/PHP

易利用性: No known exploits are available

补丁发布日期: 2015/8/6

漏洞发布日期: 2014/1/2

参考资料信息

CVE: CVE-2015-6831, CVE-2015-6832, CVE-2015-6833, CVE-2015-8867, CVE-2015-8874, CVE-2015-8879

BID: 76735, 76737, 76739, 87481, 90714, 90842