渠道公告

PHP多个远程代码执行漏洞风险预警

来源:聚铭网络    发布时间:2022-06-16    浏览次数:
 
一、漏洞概述

5月16日,PHP官方收到了来自c dot fol at ambionics dot io的一份报告,报告中提出关于PHP8.1.6版本,存在远程代码执行漏洞。经PHP官方确认,于6月9日,PHP官网发布了该漏洞的修复方案。

CVE-2022-31625


CVE-2022-31626

二、漏洞等级

CVE-2022-31625:PHP远程代码执行漏洞

高危

漏洞POC:公开

CVE-2022-31626:PHP远程代码执行漏洞

高危

漏洞POC:公开

CVSSv3评分为9.8

三、漏洞影响

四、漏洞分析

CVE-2022-31625

在pg_query_params()中,由于数组没有被初始化,因此可以释放以前请求中的延迟值,最终可导致远程代码执行。

PHP_FUNCTION(pg_query_params)函数中,使用zval_try_get_string进行数据类型转换,如果数据类型转换错误就会调用_php_pgsql_free_params释放掉的数组前部分值i,但由于错误传递参数,传递了整个数组的大小值num_params,导致释放了整个数组,进而导致释放了之前请求的值。

CVE-2022-31626

该漏洞在验证时会将mysql查询到的auth_data数据复制到内存数组p,申请p内存时,只申请了验证数据的buffer部分(长度为packet->auth_data_len)。而实际的auth_data是packet->auth_data_len+MYSQLND_HEADER_SIZE,所以导致复制时将大的数据复制到的小的空间发生了溢出。

五、修复建议

目前官方已发布修复版本,用户可升级至以下安全版本:

PHP 8.1.7

PHP 8.0.20

PHP 7.4.30

注:CVE-2022-31625影响的PHP 5.x官方已结束维护,请用户升级到上述安全版本。

参考资料

[1]https://bugs.php.net/bug.php?id=81719

[2]https://bugs.php.net/bug.php?id=81720

六、产品支持

目前聚铭网络脆弱性扫描系统(CSV)已经支持该漏洞的检测,用户可以到官网https://www.juminfo.com/index.php?catid=51下载最新漏扫插件,来检测是否存在该漏洞。

 
 

上一篇:2022年6月29日聚铭安全速递

下一篇:泰国《个人数据保护法》经两次推迟后正式生效