这篇文章主要讲解了“怎么解决Nginx中间件漏洞”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决Nginx中间件漏洞”吧!
1、文件解析漏洞
漏洞简介:
对于任意文件名,在后面添加 /xxx.php后,即可作为php解析。
影响范围:
该漏洞是Nginx配置所导致,与版本无关。常见漏洞配置如下:
复现操作:
修复建议:
1.配置cgi.fix_pathinfo(php.ini中)为0并重启php-cgi程序。
2.如果需要cgi.fix_pathinfo的特性(如Wordpress),可以禁止上传目录的执行脚本权限。或站库分离。
3.高版本PHP提供了security.limit_extensions这个配置参数,设置security.limit_extensions= .php
2、目录遍历
漏洞简介:
与Apache一样属于配置所导致的问题。一般配置如下C:/phpStudy/nginx/conf/nginx.conf
复现操作:
3、空字节任意代码执行漏洞
影响范围:
nginx 0.5.* nginx 0.6.* nginx 0.7 <= 0.7.65 nginx 0.8 <= 0.8.37
复现环境:
nginx 0.7.65+php 5.3.2
在 /html/目录下创建1.jpg,内容为
<?php phpinfo();?>
由于1.jpg无法访问,所以在URL中输入1.jpg..进行抓包
forword一下,绕过成功。
该漏洞不受cgi.fix_pathinfo影响,其为0也能解析。
4、CRLF注入漏洞
漏洞原理:
错误的配置文件如下:
复现环境:
vulhub
5、文件名逻辑漏洞(CVE-2013-4547)
影响范围:
Nginx 0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7
复现环境:
复现时需要文件名后面存在空格,而Windows不允许存在此类文件。使用vulhub进行复现。
接着抓包1.jpg…php
成功绕过。
感谢各位的阅读,以上就是“怎么解决Nginx中间件漏洞”的内容了,经过本文的学习后,相信大家对怎么解决Nginx中间件漏洞这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/232072.html