Nginx,PHP和fastcgi_split_path_info上的安全问题

前端之家收集整理的这篇文章主要介绍了Nginx,PHP和fastcgi_split_path_info上的安全问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

根据this post,据说如果我使用PHP / Nginx,为了更好的安全性,我应该

cgi.fix_pathinfo = 0

要么

if ( $fastcgi_script_name ~ \..*\/.*PHP ) {
  return 403;
}

other tutorial它推荐的风格

fastcgi_split_path_info ^((?U).+\.PHP)(/?.+)$;

它们是否彼此矛盾?任何安全建议?

谢谢.

最佳答案
您指的是an attacker can upload arbitrary code to an nginx web server and then trick the server into executing it as PHP的问题.(此问题不存在CVE,因为从技术上讲,这是一个错误配置而不是漏洞.)

您列出的任何方法都可用于修复the issue.

解决此问题的另一种更简单的方法是将以下内容添加PHP位置:

try_files $uri =404;

虽然这只有在NginxPHP在同一台服务器上运行时才有效,但这几乎总是正确的.

当然,建议是你清楚地记录你在做什么以及为什么做.

猜你在找的Nginx相关文章