nginx - 使用 $http_host 危险吗?

Cpp*_*ner 4 nginx

从我自己的答案来看,我必须替换$host$http_host才能解决我的问题......

但这安全吗?

似乎$http_host所做的一切都是从标头中暴露整个内容HOST这里的解释对我来说仍然不清楚......

有谁知道为什么会$http_host更危险?


编辑

实际上,这是我的第三次编辑......读完后我应该重新考虑我的立场: https ://stackoverflow.com/questions/1459739/php-serverhttp-host-vs-serverserver-name-am-i-understanding -the-ma

我不确定 nginx 对此有何反应,但是你们认为 nginx 是否也符合 Chris 的测试结果,即两者都不安全?

什么情况下,使用$http_host时你能想到利用的办法吗?此外,为什么删除端口号很重要?

我知道有可能破坏网络,并发送一些信息Host: fake or old ip,然后在我在其他地方读到时执行重新绑定攻击?

mgo*_*ven 5

$host只是$http_host进行一些处理(剥离端口号和小写)和默认值(的),因此在使用 时,客户端发送的标头server_name的“暴露”并没有减少。不过这并没有什么危险。Host$http_host