美文网首页
Nginx解决Host头注入

Nginx解决Host头注入

作者: 小左伯爵 | 来源:发表于2020-11-17 22:36 被阅读0次
  • Host 头指的是 HTTP Header 中的 Host 项,在开发 WEB 应用时,为了方便的获得网站域名,开发人员可能会直接使用该值带入到应用上下文中,如果该值可以被攻击者控制,且 web server 没有对 host header 进行校验,则可能导致部分安全问题。

1.测试软件安装破解

链接:https://pan.baidu.com/s/1ZwjrwNG-T5YB_IwKJThiDA
提取码:5r98

2020-11-17_203710.jpg
点击Manual activation
2020-11-17_204106.jpg
然后一路next

2.设置google浏览器代理

设置->高级->打开您计算机的代理设置


2020-11-17_204855.jpg

设置地址127.0.0.1
端口:1080

3.设置Burp Suite

2020-11-17_205136.jpg
2020-11-17_205407.jpg

此处的地址和ip设置和步骤2中的浏览器设置相同即可

4.Host头注入现象

#未作修改的nginx配置,此配置会产生Host头注入问题
upstream web {
 server 192.168.52.22:9092;
 server 192.168.52.23:9093;
}

server {
        listen       8082;
        server_name  192.168.52.22;
     
        location / {
          proxy_set_header Host $http_host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header REMOTE-HOST $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass http://web;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }                       

在浏览器输入相应地址,在测试软件中选中这条路径


2020-11-17_222723.jpg

此时Host为 192.168.52.22:8082点击Go可以收到正确响应


2020-11-17_223106.jpg
但是改变Host为aaaa 仍然能收到正确响应,
2020-11-17_223246.jpg

这即为Host头注入
下面修改nginx配置文件

#修改后的nginx配置
upstream web {
 server 192.168.52.22:9092;
 server 192.168.52.23:9093;
}

server {
        listen       8082;
        server_name  192.168.52.22;
        set $flag 0;
        if ( $host = "192.168.52.22"){
           set $flag 1;
        }
        if ( $flag = 0){
           return 233;
        }
        location / {
          proxy_set_header Host $http_host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header REMOTE-HOST $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass http://web;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }                       

此时修改Host:aaaa发现返回233


2020-11-17_223707.jpg

Host头注入问题解决

相关文章

网友评论

      本文标题:Nginx解决Host头注入

      本文链接:https://www.haomeiwen.com/subject/lpefiktx.html