访问网站时如果访问路径中缺少/,大多数中间件都会自动将路径补全,返回302或301跳转如下图,Location位置的域名会使用Host头的值。
这种情况实际上风险较低,难以构成Host头攻击。但是由于大多漏洞扫描器会将这种情况检测为Host头攻击,为了通过上级检查或各种审核,大多数甲方单位会要求修复漏洞,彻底解决问题。
该跳转路径不是web项目定义的,是中间件自动跳转的,所以不能用编写静态变量的方法修复,web项目中的全局过滤器也无法拦截。需要在nginx服务器层面配置才能修复
方法一:直接在宝塔的网站的配置里面添加,codeworker.cn改为你当前的域名
#防止Host头攻击start
if ($Host != 'codeworker.cn')
{
return 403;
}
#防止Host头攻击end
方法二:在nginx.conf添加,因为要做等保测评所以服务器采用的是https,下面的是443端口(https使用的)可以改成80端口(http使用的),可自行根据自己需要配置
#防止Host头攻击start()
server {
listen 443 default;
server_name _;
#SSL-START SSL相关配置
ssl_certificate /www/server/panel/vhost/cert/codeworker.cn/fullchain.pem;
ssl_certificate_key /www/server/panel/vhost/cert/codeworker.cn/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
error_page 497 https://$host$request_uri;
#SSL-END
location / {
return 403;
}
}
#防止Host头攻击end
此文章参考来源https://www.freebuf.com/articles/web/178315.html
推荐文章
2021-01-20 18:23:14
2021-01-22 17:24:38
2021-01-25 17:06:11
2021-01-28 17:37:27
2021-02-01 17:32:55
2021-02-03 17:41:37
2021-02-05 17:23:07
2021-02-08 16:59:58
稳定
产品可用性高于99.9%贴心
全国7*24小时客服热线专业
产品经理在线技术支持快速
快速上线运营快承诺
我们选择声誉坚持
10年专注高端品质开发