求助关于host头攻击漏洞的解决办法?
本帖最后由 sadfoo2019 于 2021-3-30 18:03 编辑客户提供的检测报告如下:
程序是php开发的OA系统,目前看来只能改Nginx,我参考如下的地址修改
参考地址:https://www.freebuf.com/articles/web/178315.html
Nginx:
方法一:
修改nginx.conf
添加一个默认server,当host头被修改匹配不到server时会跳到该默认server,该默认server直接返回403错误。
例子如下:
server {
listen 8888 default;
server_name _;
location / {
return 403;
}
}
重启nginx即可。
方法二:
修改nginx.conf
在目标server添加检测规则,参考以下标红配置:
server {
server_name192.168.0.171;
listen 8888;
if ($http_Host !~*^192.168.0.171:8888$)
{
return 403;
}
include /etc/nginx/default.d/*.conf;
location / {
root /www/dvwa;
index index.php index.html index.htm;
}
}
通过这两个方式中的第一种修改了之后,本地的web服务能启动,本地能访问系统,但是外网地址就无法打开。52人才辈出,我想咨询各路高手,该如何修改来规避检测呢?
参考楼下的连接:把server加到默认的后面启动就正常了,检测过不过得到,不晓得!
第二种方法
if ($http_Host !~*^192.168.0.171:8888$)
这里的192.168.0.171:8888改成你网站的域名和端口试试看? 也可以参考这篇文章https://www.pianshen.com/article/68161253172/ 该端口是无效的,我试过了 本帖最后由 虚幻魔王 于 2021-3-30 08:29 编辑
你是啥系统啊?请说明服务器环境,开发底层,以及网络结构才好帮你分析最简单的解决方案,最起码比你自己鼓捣换系统来的快吧
Nginx工作在7层的,如果要配置仅限于内网访问,最好2层实现 说实话 真是闲的蛋疼。host头 有漏洞 并不一定能被利用。很弱的一个漏洞。还真当回事。
就算跳转利用,有session 和cookie 的地方还是进不去。
什么找回密码,试问现在都是手机短信,就算发邮箱 也是 帐号所有者的邮箱。还能发送到攻击者的邮箱?
有些部门 真是烦人。 不要用这干坏事, 987fw 发表于 2021-3-30 11:06
不要用这干坏事,
我是防止别人干坏事或者应对市局检测啊 mmji 发表于 2021-3-30 02:56
第二种方法
if ($http_Host !~*^192.168.0.171:8888$)
这里的192.168.0.171:8888改成你网站的域名和端口 ...
我改了 可是Ngix里面有个server里面也有个if并排放吗web还是起不来