PHP-FPM RCE 远程代码执行漏洞(CVE-2019-11043)

2019年10月30日00:10:23 2

PHP-FPM RCE 远程代码执行漏洞(CVE-2019-11043)

漏洞介绍

近日,PHP官方公布了一个高危漏洞,一旦被黑客利用,服务器就会被黑客控制。

该漏洞名称是CVE-2019-11043,类型是RCE(远程代码执行),严重级别是高危。

PHP官方指出使用NGINX搭载PHP FPM的组合时,在部分配置下,存在漏洞被利用的风险,并且目前该配置使用广泛,因此该漏洞影响范围很大。

PHP-FPM是另一种PHP FastCGI实现,可为用PHP编程语言编写的脚本提供高级且高效的处理。

漏洞主要存在于PHP-FPM中的“ env_path_info”内存损坏问题,使攻击者能够在易受攻击的Web服务器上远程执行任意代码。

幸运的是,并非所有支持PHP的服务器都受到影响,仅启用了PHP-FPM的 NGINX服务器容易受到攻击。

攻击详情

Nginx上fastcgi_split_path_info在处理带有 %0a 的请求时,会因为遇到换行符 \n 导致PATH_INFO为空。而php-fpm在处理PATH_INFO为空的情况下,存在逻辑缺陷。

攻击者通过精心的构造和利用,可以进行远程代码执行攻击。写入一个Webshell到网站目录下,从而开启后门创建。

简单地说,如果存在如下情况,则容易受到攻击:

NGINX配置为将PHP页面请求转发到PHP-FPM处理器

fastcgi_split_path_info指令存在于配置中,并且包含以'^'符号开头和以'$'符号结尾的正则表达式

PATH_INFO变量是使用fastcgi_param指令定义的

没有诸如try_files $ uri = 404或if(-f $ uri)之类的检查来确定文件是否存在。

PHP官方公告:

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

CVE-2019-11043 EXP

部分内容被隐藏
评论刷新后查看

PHP官方发布最新版本7.3.11和7.2.24,其中包含针对CVE-2019-11043的修复程序。

受此事影响,许多其他虚拟主机提供商也被怀疑正在运行易受攻击的Nginx + PHP-FPM组合。

发表评论

后发表评论

目前评论:2   其中:会员  1   官方  1

    • avatar 1204793904 1

      有连接吗