假设我将浏览器配置为阻止所有 cookie 并禁用本地存储。一个聪明的网站能否以某种方式仍然将我的所有活动与持久的唯一标识符相关联,例如会话 ID?
是的,无 Cookie 跟踪确实存在。
浏览器指纹识别是一项众所周知的技术。网页可以收集浏览器的用户代理字符串、时区、屏幕分辨率、已安装字体列表或WebGL 图像渲染等信息,以创建您无法看到或控制的稳定的唯一标识符。您可以在此处或此处测试您的浏览器是否存在漏洞。您可能需要尝试在常规浏览窗口和隐身窗口中加载它们,以查看指纹是否保持稳定。特别是像 Firefox 和 Safari 这样的浏览器会尝试减轻各种类型的跟踪。
假设您还禁用 JavaScript 和 WebGL,网站可以通过滥用 HTTP 功能在您的浏览器缓存中隐藏唯一标识符。我知道这方面的三种技巧。由于它们有点难以用文字解释,我制作了一些动画来解释它们(从 02:42 左右开始)。技巧是:
ETag
响应标头。这是您的唯一 ID。下次网页对跟踪 URL 执行 Ajax 请求时,您的浏览器将在 If-None-Match
请求标头中包含该 ID,从而允许跟踪 URL 在 ETag
响应标头中再次反映该 ID。Last-Modified
时间戳,浏览器稍后会在 If-Modified-Since
请求标头中反映出来。?id=12349876
。您的浏览器将缓存重定向并在下次直接转到?id=12349876
。存在一些针对基于缓存的跟踪技术的缓解措施。 Privacy Possum 浏览器扩展可防止基于 ETag 的跟踪。
是的,网站仍然可以使用无 cookie 跟踪方法(例如服务器端跟踪、本地存储或数据层)来跟踪用户的行为。
例如,使用服务器端跟踪,跟踪代码在服务器而不是用户的浏览器上执行。这意味着用户的设备不需要存储任何数据。所有数据跟踪均在服务器上进行。
您可以在博客文章中找到有关无 Cookie 跟踪的更多信息: https://stape.io/blog/what-is-cookieless-tracking