首页 / NGINX / Nginx安装后第一个要改的配置…
Nginx安装后第一个要改的配置…
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Nginx安装后第一个要改的配置…,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1600字,纯文字阅读大概需要3分钟。
内容图文
![Nginx安装后第一个要改的配置…](/upload/InfoBanner/zyjiaocheng/927/a05a487bb75b433ea43a32b63e2a3057.jpg)
最近有朋友给我发来一个漏洞扫描报告,其中有一项是“Nginx头部***漏洞”
在绿盟的报告中,可以看到,头部***是指,http host header头中的HTTP_HOST不可靠,所以,如果后端开发代码中,通过类似PHP中的_SERVER["HTTP_HOST"]来获取host信息,那可能获取到的不是自己站点的host信息,这里简单做个复现
环境:
Nginx
PHP
Brupsuite
复现方法很简单,在Nginx中配置一个虚拟主机站点,用php-fpm处理php,在php中写一小段代码,通过_SERVER['HTTP_HOST']获取host并打印,用Brupsuite篡改host信息,环境搭建信息这里就不多说了,直接看Brupsuite过程,PHP代码如下:
接着启动Brupsuite,配置代理
浏览器设置代理到burp
接着通过浏览器请求上面nginx配置的server,在burp抓包,接着action——Send to Repeater,我们先看正常的返回
接着,通过burp改header中的host,模拟***,看结果
可以看到,php拿到的就不是我们自己的host信息,所以,这里会把恶意代码传过去
Nginx的server_name匹配规则,是通过HTTP请求头的host,去匹配配置文件中的server_name,去决定走哪个server配置,如果所有server_name都匹配不到,就使用默认的server,如果没有配置默认的server,就会请求第一个server
这也就是为什么,上面host随便写个域名,都可以访问到的原因
这里还有一个Nginx的安全配置相关的,叫“恶意域名解析漏洞”,同样的原理,别人知道你的IP,随便解析个域名,就可以访问你的网站
以上两种漏洞防范很简单,就是在nginx主配置文件中,写第一个server,server_name用默认default_server,让所有未匹配的server_name,都走这个server的配置,直接return对应的状态码,配置如下:
如果有https的网站,还需要配置443端口的默认server
或者nginx安装后,默认conf.d目录下有个default.conf,你可以在default配置中直接修改
配置完成后,通过上面的方法再模拟一次***
可以看到,已经无法访问
所以安装Nginx之后,一定要修改以上配置,防止恶意域名解析和HOST头部***
内容总结
以上是互联网集市为您收集整理的Nginx安装后第一个要改的配置…全部内容,希望文章能够帮你解决Nginx安装后第一个要改的配置…所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。