近期,监测到PHP 官方发布了多个远程代码执行漏洞,包含CVE-2022-31626、CVE-2022-31625。目前上述两个漏洞 PoC 及细节已在互联网上公开,该漏洞现实威胁提升,官方已经发布补丁。应用范围较广,因此威胁影响范围较大。请各重点单位高度重视,如本单位业务系统使用了相关受影响的版本,请尽快根据官方发布的修复版本修复,升级至安全版本。
1 漏洞描述
1.1 CVE-2022-31626
在 PHP 的 mysqlnd 拓展中存在堆缓冲区溢出漏洞,利用该漏洞需要攻击者有连接 php 连接数据库的权限,通过建立恶意MySQL 服务器,使受害主机通过 mysqlnd 主动连接该服务器,触发缓冲区溢出,从而在受害主机上导致拒绝服务或远程执行代码。
1.2 CVE-2022-31625
在 PHP_FUNCTION 中分配在堆上的char* 数组没有被清除,如果发生转换错误,将会调用_php_pgsql_free_params()函数,由于数组没有初始化,导致可以释放之前请求的值,导致远程代码执行。
1.3 漏洞编号
CVE-2022-31626、CVE-2022-31625
1.4 漏洞等级
高危
2 受影响版本
2.1 CVE-2022-31625:
5.3.0<= PHP 5.x<= 5.6.40
7.0.1<= PHP 7.x< 7.4.30
8.0.0<= PHP 8.0.x< 8.0.20
8.1.0<= PHP 8.1.x< 8.1.7
2.2 CVE-2022-31626:
PHP 8.1.x< 8.1.7
PHP 8.0.x< 8.0.20
PHP 7.x< 7.4.30
3 修复建议
目前官方已发布修复版本,用户可升级至以下安全版本:
PHP 8.1.7
PHP 8.0.20
PHP 7.4.30
4 参考链接
https://www.php.net/ChangeLog-7.php#7.4.30
https://bugs.php.net/bug.php?id=81719
https://bugs.php.net/bug.php?id=81720
网络与信息中心
2022年6月13日