PHP 5.6.x < 5.6.12 多种漏洞

high Nessus 插件 ID 85300
全新!插件严重性现在使用 CVSS v3

计算的插件严重性默认已更新为使用 CVSS v3。没有 CVSS v3 分数的插件将回退到 CVSS v2 来计算严重性。可以在设置下拉列表中切换严重性显示首选项。

简介

远程 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.13

类型: remote

系列: CGI abuses

发布时间: 2015/8/11

最近更新时间: 2021/1/19

依存关系: php_version.nasl

风险信息

CVSS 分数来源: CVE-2015-6831

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 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