【问题标题】:host header attack vulnerability主机头攻击漏洞
【发布时间】:2017-09-12 20:54:52
【问题描述】:

在我的虚拟主机文件中,我已经允许所有主机

<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs"
ServerName localhost
</VirtualHost>

<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/example"
ServerName example.dev
ServerAlias www.example.dev
<Directory "c:/xampp/htdocs/example">
Order allow,deny
Allow from all
</Directory>

</VirtualHost>

<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/example"
ServerName example.dev
ServerAlias www.example.dev
<Directory "c:/xampp/htdocs/example">
AllowOverride All
Require all Granted
</Directory>
</VirtualHost>

当我在 burp 软件请求中点击 url www.example.dev 时,将如下所示

更改主机名后

它显示响应

如果有人尝试更改主机名,我希望它会被重定向到错误消息页面

【问题讨论】:

  • 我不明白你为什么需要这个?网络服务器将读取主机并检查它是否是它知道如何服务器的虚拟主机之一,如果不是,则使用默认主机响应。如果需要,您可以将默认主机设置为 404 页面。
  • 我需要这个,因为在审核时,安全人员给了我这个漏洞来解决这个问题,否则存在安全问题
  • 你能告诉我如何解决这个问题,如果有人在请求之间更改主机,那么它应该重定向到错误页面
  • 你有两个主机名和文档根目录相同的虚拟主机,这没有意义。
  • 不要相信HTTP_HOST 标头,这就足够了。唯一的漏洞是当您信任HTTP_HOST 并且人们伪造它以在您的页面中创建看起来更值得信赖的恶意链接(等)。

标签: php apache .htaccess virtualhost


【解决方案1】:

这正是我的问题,推荐的解决方案是将 HTTP_HOST 更改为 SERVER_NAME,这还没有解决问题。

【讨论】:

    猜你喜欢
    • 2014-09-14
    • 2015-04-16
    • 1970-01-01
    • 2017-10-11
    • 1970-01-01
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多