nginx配置不当容易产生的安全问题


nginx一般用于做外网代理,配置也比较方便,但是配置不当的时候会产生一些安全问题。其中包括各个大厂也都出现过。

 

intra server ->  proxy -> nginx 

一般正常的流程是这样的

内网的集群或机器不直接连接外部,nginx做个proxy代理透出传递互联网。

 

如果nginx配置不当,或者nignx default_server没有配置或者配置内网,那么小心内网业务将被透传出去。

nginx 的 default_server 指令可以定义默认的 server 去处理一些没有匹配到 server_name 的请求,如果没有显式定义,则会选取第一个定义的 server 作为 default_server

也就是说nginx如果没配置default_server,那么nginx会默认找一个a-z的域名进行匹配的,这个是nginx的默认规则,如配置default_server为内网的业务,那么nginx也会默认使用。

nginx 批量载入配置 conf 时会按 ascii 排序载入,这就会以 server_a.conf server_b.conf server_c.conf 的顺序载入,如果没有声明 default_server 的话,那 server_a 会作为默认的 server 去处理 未绑定域名/ip 的请求

 

之前fofa沙龙中的分享也提到了,比如办公网透传host绑定外网即可漫游的情况。

引用图片:

 

 

参考链接:

http://r3start.net/wp-content/uploads/2019/08/2019080916135087.pdf 议题PPT

https://github.com/baimaohui-net/Hosts_scan host碰撞脚本

https://segmentfault.com/a/1190000015681272 关于nginx default_server问题


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM