许多VPN通过Chrome扩展程序泄漏DNS

更新资料:请注意,这不是WebRTC泄漏。这涉及DNS预取,默认情况下,所有Chrome浏览器都将启用DNS预取。我们已经将某些问题告知了VPN提供商,他们正在解决此问题.

如果您的VPN提供商在列表中,或者它通过浏览器扩展程序泄漏了DNS(在这里参加考试),请务必通知我们或他们,以便他们对此进行修补.

受影响的VPN:7月12日的最新测试

  1. Opera VPN
  2. 设定VPN
  3. Hola VPN –弱势用户:870万
  4. 贝特网 –弱势用户:约140万
  5. Ivacy VPN –弱势用户:〜4,000
  6. 触摸VPN –弱势用户:约200万

虚假泄漏Ivacy DNS泄漏示例

不会泄漏的VPN

  1. NordVPN
  2. 抄写员
  3. 网络鬼
  4. 私人上网
  5. 阿维拉幻影VPN
  6. 热点盾(固定)
  7. TunnelBear(固定)
  8. PureVPN(固定)
  9. VPN Unlimited(固定)
  10. ZenmateVPN –(已修复)
  11. DotVPN –(已修复)

VPN无限固定无泄漏示例(VPN无限)

介绍

Google Chrome浏览器具有一项称为DNS预取的功能 (https://www.chromium.org/developers/design-documents/dns-prefetching),这是在用户尝试点击链接之前尝试解析域名的尝试.

通过预先解析用户的域名来预测用户最有可能访问的网站,从而减少DNS解析时间的延迟.

问题

使用VPN浏览器扩展程序时,Chrome提供了两种模式来配置代理连接:fixed_servers和pac_script.

在fixed_servers模式下,扩展名指定HTTPS / SOCKS代理服务器的主机,以后所有连接都将通过代理服务器.

另一方面,在pac_script模式下,扩展程序提供了PAC脚本,该脚本允许在各种条件下动态更改HTTPS / SOCKS代理服务器的主机。例如,VPN扩展可以使用PAC脚本,该脚本具有比较URL并分配针对流进行了优化的代理服务器的规则,从而确定用户是否正在访问Netflix。 PAC脚本具有高度动态性,这意味着大多数VPN扩展都在fixed_servers上使用pac_script模式.

现在,问题在于,使用pac_script模式时,DNS预取将继续起作用。由于HTTPS代理不支持代理DNS请求,而Chrome不支持基于SOCKS协议的DNS,因此所有预提取的DNS请求都将通过系统DNS。这实质上会导致DNS泄漏.

触发DNS预取的情况有3种:

  • 手动预取
  • DNS预取控制
  • 多功能框

前两个允许恶意攻击者使用特制的网页来强制访问者泄漏DNS请求。最后一种意味着,当用户在URL地址栏中(例如多功能框)输入内容时,Chrome所建议的URL将被预提取DNS。这使ISP可以使用一种称为“透明DNS代理”的技术来收集用户经常访问的网站,即使使用浏览器VPN扩展时也是如此。.

测试您的VPN是否存在DNS泄漏

要测试您的VPN是否容易受到攻击,请执行以下测试:

  1. 激活您的VPN的Chrome插件
  2. chrome:// net-internals /#dns
  3. 点击“清除主机缓存”
  4. 转到任何网站以确认此漏洞

如果您发现未列出但有泄漏的VPN,请发送截图给我们([电子邮件受保护]),我们将更新列表.

解决方案/修复

想要保护自己的用户应该采取补救措施:

  • 1.在地址栏中导航至chrome:// settings /
  • 2.在“搜索设置”中输入“预测”
  • 3.禁用“使用预测服务来帮助完成搜索和在地址栏中键入的URL”选项和“使用预测服务来更快地加载页面”选项

Google Chrome中的DNS泄漏修复

这项研究是在File Descriptor(来自Cure53的道德黑客)的帮助下进行的.

压力. 请注意,在线DNS泄漏测试服务(例如dnsleaktest.com)无法检测到此类DNS泄漏,因为仅在特定情况下才发出DNS请求.

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me