由于隐私浏览器技术的日渐成熟,网站越来越无法通过 Cookie 和网页浏览器特征来追踪用户,但道高一尺魔高一丈,现在这些网站会用 TLS 1.3 中的 TLS 对话恢复机制追踪用户。
你以为禁用浏览器 Cookie 就能避免被网站追踪吗?倡导将 Cookie 追踪选择权还给用户的说法,可能只是烟雾弹,实际上仍能使用最新 TLS 1.3 传输层安全协议追踪用户。
目前网站追踪用户的手段,比较流行的仍然是 Cookie 或通过网页浏览器特征进行辨识,而较少受到关注的技术是基于传输层安全协议(Transport Layer Security,TLS)的用户跟踪,特别是使用 TLS 对话恢复(TLS Session Resumption)机制,而汉堡大学研究员率先对 TLS 对话恢复机制的适用性进行了研究。
研究发现:不靠 cookie,网站也能通过 TLS 协议追踪你
包括 Facebook 以及 Google 在内的等公司,过去都会使用 HTTP Cookie 以及网页浏览器特征追踪用户,但随着用户越来越注意保护自己的隐私,更多的人开始使用强化隐私的浏览器,以隐私模式或是扩展来限制网页追踪,这使得上述两项技术几乎失灵。另外,通过 IP 位置追踪用户也受到限制,因为用户有可能以 NAT 共享公共 IP 地址,而且网站也无法跨过不同的网络追踪装置。
网站于是开始把目光瞄向了最新的 TLS 1.3 协议上,它们的追踪技术开始转向使用 TLS 对话恢复机制。TLS 对话恢复机制允许网站利用早前的 TLS 对话中交换的密钥,来缩减 TLS 握手程序,而这也开启了让网站可以链接两个对话的可能性。由于重启浏览器会顺便清空缓存,所以这个方法仅在浏览器未重启的情况下,网站才能通过 TLS 对话恢复进行连续的用户追踪。但是这个使用习惯在移动设备上完全不同,移动设备用户很少重启浏览器。
汉堡大学研究员系统性地研究了 48 种热门浏览器以及 Alexa 前百万热门网站的配置,以评估这些追踪机制的实际配置以及用户追踪可持续时间。研究人员使用了延长攻击(Prolongation Attack),延长追踪周期至超过 TLS 对话恢复的生命周期,接着根据额外的 DNS 数据,分析延长攻击对于追踪时间的影响,以及可永久追踪的用户比例,最终导出用户的浏览行为。
研究显示,即便标准浏览器将 TLS 对话恢复生命周期设置为仅维持一天,用户仍可以被追踪长达8天之久,TLS 1.3 草稿版本建议 TLS 对话恢复生命周期为7天上限,研究人员通过 Alexa 资料集中的至少一个网站,便可永久追踪实验中的 65% 用户。
研究人员也观察到,Alexa 前百万热门网站中,有超过 80% 的 TLS 对话恢复生命周期都在 10 分钟以下,但是大约 10% 的网站使用大于24小时的周期设定,特别是广告商 —— Google 的 TLS 对话生命周期达28小时,而 Facebook 对话恢复生命周期的设定更是高达48小时,在 Alexa 前百万热门网站中位于 99.99 百分位数之上。
汉堡大学研究员指出,要防止网站通过 TLS 对话恢复追踪用户,需要修改 TLS 标准和常见浏览器的配置,而目前最有效的方式就是完全禁用 TLS 对话恢复功能。