宝塔控制面板中nginx配置如何防止Host头攻击
访问网站时如果访问路径中缺少/,大多数中间件都会自动将路径补全,返回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
推荐文章
2025-01-18
2024-11-28
2024-11-09
2024-10-25
2024-06-25
2024-01-04
2023-11-06
2023-10-30
2023-10-13
2023-10-10
稳定
产品高可用性高并发贴心
项目群及时沟通专业
产品经理1v1支持快速
MVP模式小步快跑承诺
我们选择声誉坚持
10年专注高端品质开发