【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

admin 2022年6月14日08:52:00安全漏洞评论134 views1474字阅读4分54秒阅读模式

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)


1

综述

6月9日,PHP发布安全公告,修复了两个存在于PHP中的远程代码执行漏洞。

PHP此次的漏洞,简而言之,会恶意查询服务器数据。

PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。


2

漏洞概述

漏洞类型:远程代码执行漏洞

危险等级:高危

CVSS评分:9.8

受影响版本:

PHP 5.3.0 - 5.6.40

PHP 7.0.x < 7.4.30

PHP 8.0.x < 8.0.20

PHP 8.1.x < 8.1.7

相关说明:

漏洞利用难度高;POC已公开。


3

漏洞分析

· CVE-2022-31625

漏洞详情:

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

漏洞是由于在

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

未修复代码:

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

修复后的代码:

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

同样在PHP_FUNCTION(pg_send_execute)函数中也存在这个问题。

漏洞利用条件:

需要开发的php服务端代码中将不可转换的数据param作为参数直接传递给pg_query_params()或pg_send_execute()。

可能的攻击场景为:

1、phpmyadmin等可指定连接数据库的应用。

2、存在ssrf、xss等漏洞的基于php的应用。

3、攻击者拿下了数据库服务器后,通过数据库服务器攻击php所在服务器。


· CVE-2022-31626

漏洞详情:

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

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

未修复代码:

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

修复后的代码:

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

可以看到修复后的mnd_emalloc申请的内存大小改为了packet->auth_data_len+MYSQLND_HEADER_SIZE;修复了该漏洞。

漏洞利用条件:

PHP连接查询恶意的mysql数据库。

可能的攻击场景为:

1、php连接的mysql地址可控。

2、攻击者拿下了mysql服务器,通过mysql服务器攻击php所在服务器。


4

修复建议

厂商已发布新版本修复漏洞,建议升级到 7.4.30、8.0.20、8.1.7 及以上安全版本,下载地址:https://www.php.net/downloads


参考链接:

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

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


5

产品支持

青藤万相·主机自适应安全平台

点击系统左边栏「Linux-风险发现-漏洞检测」,选择该检查项创建作业进行检测。

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)


青藤蜂巢·云原生安全平台

点击系统左边栏「应用风险-应用漏洞」,选择该检查项创建作业进行检测。

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)




【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)
【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)
【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)
【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

-完-

【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)



原文始发于微信公众号(青藤云安全):【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626)

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年6月14日08:52:00
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  【漏洞通告】PHP 远程代码执行漏洞(CVE-2022-31625、CVE-2022-31626) http://cn-sec.com/archives/1110546.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: