简介
北京时间11月20日,Nginx官方更新邮件列表,对外通报Nginx 0.8.41 – 1.5.6 版本存在两类高危漏洞,经过百度XXX安全研究团队确认,漏洞确实存在。使用受影响版本Nginx的网站主要面临以下风险:
(1)通过Nginx规则限制后台地址访问IP、数据库等敏感地址访问的网站如果使用受影响版本,可能会造成限制失效。
(2)网站存在上传功能,攻击者可以上传存在恶意代码的图片、txt、html文件即可向网站植入后门。
以下是Nginx官方邮件中文翻译信息:
Nginx 的安全限制可能会被某些请求给忽略,(CVE-2013-4547).
当我们通过例如下列方式进行 URL 访问限制的时候,如果攻击者使用一些没经过转义的空格字符(无效的 HTTP 协议,但从 Nginx 0.8.41 开始因为考虑兼容性的问题予以支持)那么这个限制可能无效:
location /protected/ {
deny all;
}
当请求的是 “/foo /../protected/file” 这样的 URL (静态文件,但 foo 后面有一个空格结尾) 或者是如下的配置:
location ~ \.php$ {
fastcgi_pass …
}
当我们请求 “/file \0.php” 时就会绕过限制。
该问题影响 nginx 0.8.41 – 1.5.6.
该问题已经在 Nginx 1.5.7 和 1.4.4 版本中修复。
补丁程序在:http://nginx.org/download/patch.2013.space.txt
配置上临时的解决办法是:
if ($request_uri ~ ” “) {
return 444;
}
小结
1,如果是用军哥的LNMP一键安装包,请到lnmp解压包里,执行升级nginx脚本。
命令:./upgrade_nginx.sh
选择需要升级到的版本号,输入1.5.7或者1.4.4。
2,如果是其他方法安装的nginx的,那么找到nginx的配置文件:
命令:find / –name nginx.conf
编辑该文件,将以下代码添加到server{ }中间,重启nginx即可。
if ($request_uri ~ ” “) {
return 444;
}
其实没有百度XX说的那么严重,建议上临时补丁。
转载请注明:分享吧 » Nginx爆发超级漏洞/用Nginx的朋友赶紧升级吧!