关于锐讯

成立于2004年,十多年经验积累,专注为客户提供优质的网络环境、接入带宽及高稳定性的网络服务

CVE-2019-11043: PHP-FPM在Nginx特定配置下任意代码执行漏洞预警
时间:2019.10.26   作者:网络   阅读:79

\"\"

 

0x00 漏洞背景

2019年10月23日, 360CERT监测到 PHP 官方发布了在 nginx 配置不当的情况下 php-fpm 可导致远程代码执行的漏洞更新。

360CERT判断漏洞等级为中危,影响面有限。

但由于是配置文件的开放性。还请使用 nginx+php-fpm 的服务管理员/运维人员及时做好自查自检工作。

 

0x01 漏洞详情

在 https://github.com/php/php-src/blob/master/sapi/fpm/fpm/fpm_main.c#L1150 中由于n(%0a)的传入导致nginx传递给php-fpm的PATH_INFO为空。

进而导致可以通过FCGI_PUTENV与PHP_VALUE相结合,修改当前的php-fpm进程中的php配置。在特殊构造的配置生效的情况下可以触发任意代码执行。

注:完全复制Nginx官方给出的php-fpm示例配置的用户受到此漏洞影响

示例配置如下:

PHP FastCGI Example | NGINX

漏洞证明:

\"\"

使用配置文件

\"\"

 

0x02 修复建议

  1. 修改 nginx 配配置文件中fastcgi_split_path_info的正则表达式,不允许.php之后传入不可显字符

  2. 暂停使用 nginx+php-fpm 服务

  3. 删除如下配置

     fastcgi_split_path_info ^(.+?.php)(/.*)$;
     fastcgi_param PATH_INFO       $fastcgi_path_info;
    

 

0x03 时间线

2019-10-21 PHP 官方发布漏洞更新

售前在线咨询

以下为10位资深销售主管官方企业Q,更多销售员Q请咨询销售主管

售后服务

或与官方提供的专属QQ一对一直接服务

工作时间: 周一至周五 9:30至17:30 周六13:30至17:30,其它日期按国家法定节假日休假,如果有不便之请敬请谅解! 售后技术支持:多部门7*24小时机制

客户投诉留言

电话和QQ,以便我们为您提供优质服务! *为必填项