什么是浏览器指纹?

浏览器指纹识别是继 cookie 和 supercookie 之后的第三种用户跟踪方式。指纹识别由网站发起,这些网站分析 HTTP 客户端发送的请求,通过收集数字指纹来唯一识别特定机器。即使在 cookie 删除之后,以这种方式获取的数据也可用于持续跟踪用户。

在我们的简短文章中,我们将概述浏览器指纹识别的基础知识、它如何用于跟踪互联网用户以及可以采取哪些措施来降低通过发送的详细信息被识别的可能性。

什么是浏览器指纹识别以及它是如何工作的?

浏览器指纹识别是一种主动的数据收集方式,它会散列独特的浏览器参数并创建数字签名。网站可以向 HTTP 请求响应添加额外的 JavaScript 代码(通过创建自己的脚本或从第三方提供商处购买)。JavaScript 代码扫描所有公共浏览器参数并根据数据创建唯一的浏览器签名。

通过使用额外的 JavaScript 代码获取的数据包括用户代理、屏幕大小和分辨率、安装的字体、插件和扩展、GPU/CPU 等。每个数据点都增加了设备的唯一性,使网站更容易识别特定的机器。

用于指纹跟踪的方法

浏览器指纹识别正变得越来越普遍。许多网站,包括排名靠前的网站,都在利用指纹识别新用户和回访用户。谷歌和必应等搜索引擎也不例外,它们一直在采用各种措施来识别特定用户。

音频指纹识别

音频指纹识别测试您的设备如何播放声音。声波提供有关设备音频堆栈的信息,例如声音硬件、软件和驱动程序。

HTML5 画布

高级浏览器指纹识别版本可以在机器上提供更多数据,主要是通过访问HTML5 Canvas并请求某种程度的图形处理。使用 HTML5 Canvas 可以显示机器的操作系统、浏览器和 GPU。HTML5 Canvas 通常要求浏览器渲染特定的图像。由于 GPU 渲染图像的方式略有不同,因此可能会获取特定于设备的详细信息。

时钟偏差

极端措施包括分析时钟偏差。时钟偏差是指来自一个源(主要来自时钟发生器)的电信号不均匀地到达不同的组件。这些差异受硬件温度变化的影响。因此,通过足够的数据和数值分析,可以测量时钟偏差差异以确定硬件规格和机器的许多其他方面。

温度变化可用于收集机器使用的设备上的数据。来源:Hot or Not:通过时钟偏差对主机进行指纹识别

了解浏览器的独特性

浏览器唯一性是用户能否被识别的决定因素。简而言之,浏览器唯一性将一台设备与许多其他计算机指纹进行比较,以找到可能的重复项。如果数据集中存在的副本很少,则认为该设备是唯一的。

由于可以收集有关特定设备和浏览器的大量数据,因此即使没有访问 cookie 数据,网站也可能将用户识别为唯一用户。电子前沿基金会 (EFF) 的一项研究发现,286 777 个浏览器中只有 1 个会共享其指纹。如此高水平的浏览器唯一性意味着可以仅通过指纹识别轻松识别同一用户。

资料来源:您的浏览器有多独特?

请注意,指纹的全球唯一性可能会更糟,因为研究参与者可能比普通互联网用户更精通技术和隐私意识。然而,准确预测指纹的全局唯一性似乎几乎是不可能的。由于实验样本和全局指纹集之间的差异,数学上的限制是显而易见的。

乍一看,独特指纹的存在似乎令人费解。对于普通互联网用户来说,大多数浏览器可能看起来非常相似。但是,唯一性通常取决于插件泄露的信息量。例如,JavaScript 版本数据通常包含仅用于调试目的的编号(例如,1.6.0_17)。由于开发过程中有许多微小的变化,一个插件可能有数百个不同的版本。结合浏览器的详细信息、其所有插件和许多其他数据点可以创建数百万个唯一可识别的设备。

提高浏览器的唯一性

可以使用 EFF 开发的项目来测试浏览器的唯一性:Panopticlick。Panopticlick 浏览器指纹测试将揭示收集的有关您设备的所有数据,并提供可能的选项来防御它。

如果被大公司追踪不是你的菜,那么降低浏览器唯一性是指纹保护的最有效选择:

  • 使用常用的浏览器。运行奇怪的浏览器(例如 Comodo IceDragon)将大大增加拥有唯一指纹的可能性。
  • 避免自定义用户代理。独特的用户代理是从人群中脱颖而出的可靠方式,因此使用通用用户代理总是更好。
  • 减少使用的插件数量。唯一性受到浏览器中安装的插件数量的严重影响。
  • 缩小首选语言列表。请求不同语言的页面大大提高了浏览器的指纹识别能力。例如,TorButton 默认只请求 EN 版本的网站。
  • 使用 TorButton。TorButton 将 Tor 浏览器中使用的大多数安全功能实现到 Firefox 浏览器。
  • 禁用 JavaScript。禁用 JavaScript 是一种极端措施,会破坏几乎所有网站。然而,EFF 发现 NoScript(允许用户关闭 JavaScript 的扩展程序)用户对指纹识别的抵抗力最强。

具有讽刺意味的是,本应增强隐私和减少唯一性的反指纹解决方案和插件通常会产生相反的效果。可以检测到已安装的插件(及其版本),这意味着它们通常会增加而不是减少浏览器的唯一性。

我们建议尝试使用这些选项,利用 Panopticlick 测试,并在互联网上浏览以找到最合适的组合。一次使用上面列出的所有选项可能会破坏许多网站,而无法清楚地说明到底发生了什么。

结论

浏览器指纹作为一种跟踪措施变得越来越普遍。与前几代跟踪工具(例如,HTTP cookie)不同,防御浏览器指纹识别要困难得多。提高浏览器的唯一性是一种选择,但最有效的措施是禁用 JavaScript,这可能会在显示网站时导致客户端问题。

想了解硬币的另一面——未来的网络抓取工具需要如何构建指纹识别的变通方法?阅读我们关于指纹识别及其对网络抓取的影响的博客文章!

赞(0) 打赏
未经允许不得转载:在线代理 » 什么是浏览器指纹?

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址