一、漏洞情形

Nginx与php-fpm做事器上存在高危漏洞,由于Nginx的fastcgi_split_path_info模块在处理带 %0a 的要求时,对换行符 \n 处置不当造成PATH_INFO值为空,导致php-fpm 组件在处理 PATH_INFO 时存在漏洞,可被攻击者利用进行代码实行攻击。
目前,开源社区已有漏洞PoC公开。

二、影响范围

phpfpm漏洞关于PHP 长途代码履行高危破绽的紧迫预警传递 Angular

 Nginx+php-fpm做事器利用如下默认配置,可能存在远程代码实行漏洞。

location ~ [^/]\.php(/|$) {

fastcgi_split_path_info ^(.+?\.php)(/.)$;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_pass php:9000;

...

}

三、处置建议

不影响正常业务情形下,删除Nginx配置文件中的如下配置:

fastcgi_split_path_info ^(.+?\.php)(/.)$;

fastcgi_param PATH_INFO $fastcgi_path_info。

请广大网民及时进行漏洞修复。

附件:

参考链接

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