问题
最近渗透测试,测出了一个host头攻击中危问题。
解决
通过设置nginx域名白名单解决,具体配置如下:
http {
# 隐藏版本号
server_tokens off;
server {
listen 900342;
server_name www.xxxx.com;
...
}
server {
listen 900342;
server_name www.cccc.com;
...
}
# 显示的定义一个 default server
server {
listen 900342 default_server;
server_name _;
return 444;
}
}
这里的意思是如果请求头Host
里面的数据,没有匹配上www.xxxx.com和www.cccc.com,则默认返回444.
nginx还有个版本号暴露问题,顺手解决一下。
总结
nginx这个Host注入攻击,还是比较容易解决的。