将网络错误重定向到主机文件上的本地主机是否有害?

信息安全 网页浏览器 事件响应 dns 配置
2021-09-11 01:16:22

我正在检查维基百科上的文章主机文件,我发现了这个:

通过将不需要的内容重定向到本地主机 (127.0.0.1) 来阻止对服务器的访问可能会产生安全隐患。由于 127.0.0.1 只能由主机本身访问,因此连接可能是受信任的。要跟踪的链接可能会被精心设计为对本地主机发起攻击。

虽然它没有引用任何参考资料,但我想知道这是不是真的。

我考虑过使用主机文件来阻止一些网络错误和跟踪器。这是否安全?

4个回答

我猜维基百科作者指的是 IE 安全区域,其中 DNS 名称或 IP 地址为诸如

  • ActiveX 控件
  • Javascript
  • 非签名数据的执行
  • 访问内部(读取公司文件服务器)数据。

更多信息在这里

想象一下,您正在本地机器上运行网络服务(例如 HTTP)。这绑定到环回接口 (127.0.0.1) 和面向 Internet 的接口 (80.1.1.1)。

现在假设您的计算机上有一个脚本,攻击者知道该脚本可用于执行管理任务,但前提是由管理员执行。

假设您的脚本仅假定访问者是从服务器本身连接的管理员。可以使用 GET 变量调用管理函数,例如:http : //127.0.0.1/?droptable=foo&setpwd=bar

如果用户尝试从 Internet 执行此操作,脚本可以看到正在连接的用户位于外部 IP 上,并且会返回 HTTP 403。

现在你正在你的服务器上浏览互联网(你真傻)。您单击了一个攻击者链接,其域名与一些可疑的东西相关联,因此它在您的主机文件中。现在,该链接不再将您带到http://blockeddomain.com/?droptable=foo&setpwd=bar,而是您自己的主机文件确保http://127.0.0.1/?droptable=foo&setpwd=bar被加载。

您的数据库表被删除,攻击者破坏了您的身份验证机制。

当然,这是一个非常基本的示例,需要做出许多假设。然而,这是一种现实世界的可能性,即这种设置如何让您头疼。

如果您是自己/etc/hosts设置阻止特定网络错误/跟踪器的人,我认为没有任何危险然而,我可以很容易地想象一个攻击者可以/etc/hosts用来重定向到 localhost 来做一些恶意事情的场景

例如,假设攻击者设计了一个网站的恶意克隆(如amazon.com)并将其安装在本地网络服务器上并编辑 /etc/hosts 以重定向到 amazon.com 到 localhost。访问 amazon.com 的那台计算机上的用户不会知道其中的区别,并且可能会将机密信息输入到在 localhost 上运行的恶意 Web 应用程序(可能会将机密信息发送到其他地方)。

我不会太担心重定向到 localhost 被“信任”;使用客户的 IP 地址作为身份验证的手段来授予他们更改信息的权限是 Web 应用程序设计中的错误。

也许这是一个更好的解决方案。而不是127.0.0.1在主机文件中使用,净效果不一样 - 但更安全 - 使用0.0.0.0