首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PHP类的网站在NGINX服务上运行小心被攻击

【"攻击"】篇

不知道你们有没有用过NGINX服务器,如果在NGINX服务器上运行PHP写的网站,并且开启了PHP-FPM功能,那要小心有漏洞,这个漏洞会允许别人未授权下攻击你的服务器。

这个漏洞CVE-2019-11043能影响到PHP-FPM配置的网站,PHP-FPM是另一种PHP FastCGI的实现,使用PHP编程语言编写的脚本提供高效的处理。漏洞的主要PHP-FPM模块中的“ env_path_info”下溢内存损坏问题,并与其他问题链接在一起,使别人更容易在Web服务器上远程攻击。

哪种PHP的网站容易受到黑客的攻击?

运行PHP7+版本容易受攻击的服务器,但PHP-FPM下溢的错误也影响之前的PHP版本。简单地说,如果存在以下情况,你们的网站就容易受到攻击:

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

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

3、PATH_INFO变量使用fastcgi_param定义。

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

fastcgi_split_path_info命令将PHP网页的URL分为两部分,帮助PHP-FPM引擎以及值包含其路径信息。

这个漏洞如何利用PHP FPM运行?

定义fastcgi_split_path_info伪指令的正则表达式,通过使用换行符进行操作,使split函数最终将路径信息设置为空。由于FPM代码中有一个算术指针,错误地认为env_path_info的前缀等于php脚本的路径,而没有实际验证服务器上文件的存在,因此攻击者可以利用这个缺陷来覆盖数据,并通过请求目标网站的特制URL在内存中存储。

在后台,内存可以添加自定义php.ini值,在PHP-FPM配置文件中。攻击者可以使用Web Shell执行任意的代码块。

所以我建议你们将PHP更新到PHP 7.3.11和PHP 7.2.24以上,比较安全一点。

最后:所有的黑灰网络项目,意在防住你们掉入坑里,请勿操作!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20191204A0IHJY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券