许多最近的协议(例如加密 DNS 和 HTTPS)对 Web 架构的关键部分进行加密,否则窃听者可能会利用这些部分来推断用户的数据。但加密不一定能保证隐私,尤其是在元数据方面。 DNS-over-HTTPS (DoH) 或加密服务器名称指示 (ESNI) 等新兴标准可以保护 DNS 查询和 TLS SNI 扩展的内容。但是,仍然可以通过简单地查看源自用户设备的流量上的目标 IP 地址来确定用户正在访问哪些网站,这些 IP 地址作为 TLS 握手的 ClientHello 的一部分可见。该元数据可以被多个代理利用和货币化,以分析和定位用户进行广告。我们在伊利诺伊大学进行了一项测量研究,以了解攻击者是否可以仅使用来自用户设备的一组 IP 地址推断出用户尝试连接的网站。我们使用基于 Chromium 构建的高度可配置的网络爬虫 MIDA,对参与呈现 Alexa 前 100 万中最受欢迎网站的所有域执行 DNS 解析。由于在请求网站时执行的子查询,我们还考虑了从不同 Web 服务器加载的几个资源。联系的所有这些 IP 的集合称为网站的页面加载指纹 (PLF)。我们采用了一个对手模型,该模型旨在通过收集各种候选域的正向映射来恢复域信息,然后使用答案来推断给定 IP 的反向映射。
图 2 — PLF 如何解释在 Web 请求的一部分上加载的多个资源的图形表示。免责声明:以上网站仅用作示例。对于我们数据集中的每个 IP 地址,我们计算了映射到它的域数量作为其匿名集。我们数据集中的一小部分 IP 地址 (47.6%) 对应于单个域。对于这些域,攻击者知道用户可能查找的潜在地址集并能够对其执行前向查找,加密 DNS 几乎没有任何好处。大约 20% 的请求以这种方式唯一标识;值得注意的是,s (XHR) 不太可能映射到站点唯一的 IP 地址,而样式表和图像更有可能。图 3 — 此图将生成的匿名集的数量映射到它们的大小,表明几乎一半的匿名集的大小为 1,因此可以唯一地映射到网站。我们数据集中大约 68% 的 IP 是单个站点独有的,总共有 402,524 (42.6%) 个站点使用至少一种资源,其域映射到站点唯一 IP 地址。大多数网站 (95.7%) 都有唯一的 PLF,这表明存在仅从所联系的 IP 地址列表中识别出用户正在访问该网站的风险。图 4 - 如何将页面加载指纹用作签名,通过简单地查看 IP 地址来识别请求的网页。因此,我们得出结论,在 Web 浏览的上下文中,DNS 和 SNI 隐私对知道用户可能访问的一组合理站点(即使该组非常大)并且执行前向查找以推断的对手提供了有限的保护与给定 IP 地址关联的域名和站点。
真实世界的推理与我们的封闭世界假设略有不同,因为对手可以使用更广泛的数据集。在我们的研究中可能看起来独一无二的 PLF 签名实际上可能属于两个不同的网站;这是乐观的,但我们已经确定了映射到唯一域的 IP 地址,这些 IP 地址可能用于唯一地配置网站。我们确实发现内容分发网络 (CDN) 通过将更多域合并到同一 IP 地址来提供额外保护的重要机会。 HTTP/2 连接合并可以抑制来自页面加载跟踪的连接并有助于改善用户隐私。要了解有关我们工作的更多信息,请观看我们在 2019 年应用网络研究研讨会上的演讲。 Simran Patil 是伊利诺伊大学厄巴纳香槟分校计算机工程专业的硕士生。她是由伊利诺伊州安全和隐私研究中心的顾问 Nikita Borisov 教授领导的 Hatswitch 研究小组的成员。