PHP 5.6.x < 5.6.40 多个漏洞

critical Web App Scanning 插件 ID 98245

简介

PHP 5.6.x < 5.6.40 多个漏洞

描述

根据其标题,远程 Web 服务器上运行的 PHP 版本为低于 5.6.40 的 5.6.x、低于 7.1.26 的 7.1.x、低于 7.2.14 的 7.2.x 或低于 7.3.1 的 7.3.x。因此,该应用程序受到多个漏洞影响:

- 在 gd_interpolation.c 的 _gdContributionsAlloc 函数中存在一个整数下溢情形。未经验证的远程攻击者可通过与递减 u 变量相关的向量,造成不明影响。(CVE-2016-10166)

- gdImageColorMatch 中存在一个基于堆的缓冲区溢出情形,这是由于未正确计算配置的缓冲区大小所致。攻击者可利用此问题,通过调用 imagecolormatch 函数,并以特制影像数据作为参数。(CVE-2019-6977)

- 由于未正确验证输入数据,xmlrpc_decode 函数中存在基于堆的缓冲区过度读取。未经身份验证的远程攻击者可加以恶意利用,通过特制的要求,造成堆越界读取或释放后读取情形,进而可能导致系统全面遭到入侵。(CVE-2019-9020)

- PHAR 扩展的 PHAR 读取函数中存在基于堆的缓冲区过度读取情形,这是由于未正确实现内存操作所致。未经身份验证的远程攻击者可加以恶意利用,通过诱骗用户在目标系统上解析特制的文件名称,来泄露敏感信息。(CVE-2019-9021)

- dns_get_record 函数中存在越界读取错误,这是由于未正确分析 DNS 响应所致。未经身份验证的远程攻击者可利用此问题,通过特制的 DNS 回复,泄露内存内容。(CVE-2019-9022)

- mbstring 正则表达式函数中存在多个基于堆的缓冲区过度读取实例,这是由于未正确实现内存操作所致。未经身份验证的远程攻击者可通过发送含有多字节序列的特制正则表达式来加以恶意利用,以造成允许攻击者全面入侵目标系统的情形。(CVE-2019-9023)

- 由于未正确实现内存操作,xmlrpc_decode 函数中存在越界读取错误。未经身份验证的远程攻击者可加以恶意利用,通过恶意的 XMLRPC 服务器造成 PHP 读取分配区域之外的内存。(CVE-2019-9024)

- 由于未正确实现内存操作,mb_split 函数中存在越界读取和写入错误。未经身份验证的远程攻击者可通过造成 PHP 执行具有负参数的 memcpy 函数加以恶意利用,造成缓冲区过度读取和过度写入情形,进而允许攻击者全面入侵系统。(CVE-2019-9025)

请注意,扫描程序并未测试这些问题,而是仅依据应用程序自我报告的版本号进行判断。

解决方案

升级至 PHP 5.6.40 或更高版本。

另见

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

插件详情

严重性: Critical

ID: 98245

类型: remote

发布时间: 2019/3/13

最近更新时间: 2023/3/14

扫描模板: api, basic, full, pci, scan

风险信息

VPR

风险因素: Medium

分数: 6.7

CVSS v2

风险因素: High

基本分数: 7.5

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

CVSS 分数来源: CVE-2016-10166

CVSS v3

风险因素: Critical

基本分数: 9.8

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

CVSS 分数来源: CVE-2016-10166

漏洞信息

CPE: cpe:2.3:a:php:php:*:*:*:*:*:*:*:*

可利用: true

易利用性: Exploits are available

补丁发布日期: 2017/3/15

漏洞发布日期: 2017/3/15

参考资料信息

CVE: CVE-2016-10166, CVE-2019-6977, CVE-2019-9020, CVE-2019-9021, CVE-2019-9022, CVE-2019-9023, CVE-2019-9024, CVE-2019-9025

BID: 95869, 106731, 107156, 107154, 107157