通过变形的缓存识别Tor网络用户的真实IP地址

图片

本文介绍了“通过301重定向导致缓存失真”攻击的实际应用示例,Tor网络的输出节点可将其与恶意代码一起使用,以识别所选用户的真实IP地址。

攻击场景


攻击场景如下:


  • 客户端:Chrome Canary(76.0.3796.0)
  • 真实客户端IP:5.60.164.177
  • 客户跟踪参数:6b48c94a-cf58-452c-bc50-96bace981b27
  • Tor网络的输出节点的IP地址:51.38.150.126
  • 透明反向代理:tor.modlishka.io(Modlishka-要发布的更新代码。)

注意:在这种情况下,通过SOCKS5网络协议将Chrome浏览器配置为使用Tor网络。 Tor通道已调整到特定的测试输出节点:“ 51 .38.150.126”。 这也是对该概念的验证,将来可以优化许多设置...

对于Tor网络的恶意输出节点,所有流量都将通过Modlishka代理服务器重定向:

iptables -A OUTPUT -p tcp -m tcp --dport 80 -j DNAT --to-destination ip_address:80 iptables -A FORWARD -j ACCEPT 


攻击场景说明


假设:

  • 将使用“ Tor”网络连接的浏览器应用程序(在这种情况下为标准浏览器),最后,该连接将通过恶意的输出节点。
  • Tor网络的恶意输出节点,该节点拦截并扭曲所有HTTP流量(响应代码HTTP 301)的缓存,该缓存没有传输层安全加密协议(TLS)。



让我们看一下攻击场景的以下步骤:

  1. 通过将浏览器配置为使用Tor系统的SOCKS5网络协议,或者通过配置为使所有操作系统流量都可以通过Tor网络重定向,用户可以通过Tor网络连接到Internet。
  2. 用户使用自己喜欢的浏览器开始正常的Internet访问会话,该浏览器通常通过Tor网络的隧道发送许多没有TLS安全协议的HTTP流量。
  3. Tor网络的恶意输出节点拦截请求并通过使用HTTP 301响应代码转发每个请求来做出响应。 这些重定向将由浏览器不断缓存,并将与分配的Tor客户端标识符一起发送到跟踪URL。 可以通过以下方式创建跟踪URL: user-identifier.evil.tld ,其中“ evil.tld”将收集有关源IP地址的所有信息,并将用户重定向到最初请求的主机...或透明反向链接代理服务器,它将尝试拦截所有后续的HTTP客户端流量。 此外,由于可以自动扭曲大多数最受欢迎域的缓存(如上一篇文章中所述),例如 根据«Alexa»公司的统计数据显示,前100个站点中,攻击者最大程度地利用了识别真实IP地址的机会。
  4. 退出Tor网络会话后,用户将切换到其常规网络。
  5. 用户一旦在地址栏中输入以前扭曲的域之一的地址(例如,“ google.com”),浏览器就会使用缓存将内部重定向到带有输出节点上下文标识符的跟踪URL。
  6. 输出主机将能够使用从使用跟踪URL和用户ID的外部主机接收到的信息,将先前拦截的HTTP请求与用户的真实IP地址进行匹配。 evil.tld主机将具有有关用于访问跟踪URL的所有IP地址的信息。

显然,此方法使您可以使用Tor网络的输出节点将选定的HTTP请求与客户端IP地址进行有效匹配。 发生这种情况的原因是,客户端将通过“ Tor”网络隧道,然后再一次通过Internet提供商的标准连接建立连接,来请求先前生成的跟踪URL。 都是因为缓存中的代码乱码。

另一种方法可能是基于引入具有嵌入式URL的经过修改的JavaScript代码,以跟踪没有TLS安全协议的相应响应,并更改必要的控制缓存标头(例如,“ Cache-Control:max-age = 31536000”) 。 但是,这种方法不是很有效。

也可以通过各种Web应用程序的标准cookie跟踪用户,但是很难迫使客户端两次访问在攻击者控制下的域:首先,通过Tor网络的输出节点进行连接,然后在切换至标准Internet连接后再次进行访问提供者。

结论


事实是,攻击者能够通过恶意输出节点注入格式错误的代码并检测发送HTTP流量而不使用TLS安全协议的Tor用户的真实IP地址,从而在浏览器缓存中实现某些更改。

另外,大量流行域名的失真将增加接收HTTP请求(分配了用户ID)的反向响应的可能性,这将确定用户的真实IP地址。 您可以尝试从某些浏览器客户端中截取该域,并希望该域名的错字不会被用户注意到或不会显示出来(例如,WebViews移动应用程序)。

降低风险的方法:

  • 通过Tor网络连接到Internet时,请确保禁用所有不使用TLS安全协议的流量。 可以使用的浏览器插件示例:适用于Firefox和Chrome浏览器的浏览器。
  • 此外,通过Tor网络连接到Internet时,请始终使用“专用”浏览器模式。
  • 在确保所有传出流量都使用TLS安全协议之前,不要通过Tor网络将流量重定向到整个操作系统。
  • 尽可能使用最新版本的Tor浏览器浏览网络。



DEDIC.SH上提供了带有2019 Intel可扩展处理器的专用服务器的最新双处理器配置:

  • 2个Xeon Silver 4214-总共24个内核
  • 2x Xeon Gold 5218-总共32核
  • 2个Xeon Gold 6240-配置36核。

具有两个至强银4214的服务器的成本- 从15210卢布/月
我们也准备为您收集任何配置 - 写信给我们

如果不需要大功率的专用服务器-您需要150卢布/月的VDS

Source: https://habr.com/ru/post/zh-CN456896/


All Articles