理解和预防字体指纹识别

防止字體指紋識別:增強您的線上隱私

什么是浏览器指纹?

浏览器指纹(或数字指纹)是网站收集有关用户浏览器和设备的信息集合。 浏览器指纹用于识别唯一访问者。 即使用户清除 cookie 或使用隐身模式,此方法也用于在互联网上跟踪用户。 浏览器会有几种检测技术来实施这一方法。

指纹识别技术的示例?

画布指纹技术: 这种技术涉及在网页上创建一个隐藏的 < canvas > 元素。用户的浏览器在这个元素上绘制图像,网站读取像素数据。由于硬件和软件差异而导致的渲染变化会产生一个独特的指纹。

WebGL指纹识别: 这种方法利用WebGL的图形创建和渲染功能。与画布指纹识别类似,渲染差异可用于创建独特的指纹。

音频指纹技术: 浏览器生成声音(通常是无法听见的),并分析其呈现。音频系统及其处理中的微小变化使设备可被识别。

浏览器插件指纹技术: 在这种情况下,它会读取已安装的浏览器插件和扩展的列表。不同的插件组合可用于创建一个浏览器指纹。

HTTP 头指纹识别: 浏览器分析 HTTP 请求头,如用户代理、接受语言、引用页等。这些头部可能包含能区分不同用户的信息。

CSS指纹识别: 这种技术利用CSS(层叠样式表)来测量和分析元素和字体的大小。样式渲染上的差异可以形成独特的指纹。

WebRTC指纹识别: 这种技术利用WebRTC获取设备的本地IP地址。它可以揭示有关用户网络的其他信息。

**字体指纹技术:**该技术检查特定字体的存在和呈现方式。安装的字体及其呈现的差异可用于创建独特的浏览器指纹。

追踪字体指纹的技术有哪些

网站使用一种称为字体指纹识别的方法来识别您设备上安装的字体集。当您访问一个网站时,脚本会在后台不可见地运行,自动收集有关您浏览器显示的字体的数据。

以下是跟踪字体指纹的技术。

CSS 字体加载技术

这种技术使用层叠样式表(CSS)来加载并检查字体的存在。

它的运作原理:

在网页上创建一个带有文本的隐藏元素,然后应用特定的字体。如果用户的设备上安装了该字体,文本将用该字体呈现;否则将使用备用字体。网页测量文本的大小和样式,以确定该字体是否已安装。

Undetectable.io - Code中CSS字体加载技术示例

JavaScript 字体检测技术

这种方法使用JavaScript创建带有文本的隐藏元素,并应用不同的字体。

运行原理:

创建了一个带有基准字体(例如等宽字体)的元素。然后测量了基准字体大小。随后应用了测试字体,并再次测量了文字大小。如果大小不同,这意味着该字体在设备上可用。

Undetectable.io - code中JavaScript字体检测技术示例

基于闪存的字体检测技术

Adobe Flash 用于确定安装的字体。

工作流程:

一个 Flash 对象可以访问系统资源并检查已安装的字体。然后将可用字体列表传输回服务器。

值得注意的是,这种技术有其优缺点。

优势: 准确的字体识别。

缺点:Flash技术已经过时,并且大多数浏览器不再支持,使得这种技术几乎已经过时。

HTML5 画布字体检测技术

在这种方法中,< canvas > 元素用于呈现具有不同字体的文本并测量它们的大小。

操作原理:

创建了一个名为 "canvas" 的元素以及一个用于绘制文本的上下文。使用基本字体(例如等宽字体)绘制文本并测量其大小。然后使用测试字体再次绘制文本并重新测量。如果两次大小不同,那么意味着该字体可在设备上使用。

Undetectable.io - HTML5 Canvas 字体检测技术

检测到的字体分类

在大多数情况下,每个用户的计算机或移动设备上已经安装了特定的字体集。要检查它们的数量,您可以访问browserleaks。这是一个用于检查浏览器指纹的服务。

Browserleaks 数字指纹检测服务首页

接下来,我们将告诉您哪些字体可以预先安装在您的设备上。

系统字体

系统字体是预先安装在操作系统中的字体,用于显示用户界面和应用程序中的文本。它们是操作系统提供的标准字体集的一部分,旨在确保在各种设备上的兼容性和一致的文本显示。一些流行的系统字体包括Arial、Helvetica和DejaVu Sans。

应用程序字体

应用程序字体是一种仅由特定应用程序安装和使用的字体,而不是整个操作系统。它们旨在增强特定应用程序中文本元素的外观和功能。

应用程序字体可以通过向设备上的字体集合添加独特性和变化性,从而影响字体指纹技术。使用非标准或独特的字体,这些字体未安装在默认操作系统中,会使指纹更加少见且更详细。当检查字体的可用性时可以检测到这些特定字体,这表明安装了特定应用程序。网站可以收集关于系统字体和应用程序字体的信息,从而创建更准确和独特的浏览器数字指纹,用于追踪用户。

个人字体

个人字体是由个人用户或组织创建、定制或使用的字体,以满足其特定需求。与系统和应用程序字体不同,个人字体不是默认预安装在操作系统或应用程序中的,而是由用户自行添加的。

个人字体会影响浏览器的数字指纹,通过添加独特特征,这些特征在其他设备上很少见,使浏览器的指纹更加准确和独特。它们的存在可用于精确识别和跟踪用户在各个网站和应用程序中的活动。

如何绕过字体指纹

为了绕过字体指纹识别并保护您的隐私,您可以使用以下方法:

使用反检测浏览器

反检测浏览器,如 Undetectable,专门设计用于替换浏览器的数字指纹。它们完全改变字体信息以增加识别的复杂性。

禁用 JavaScript

许多字体指纹识别技术使用JavaScript来检查字体的存在,禁用JavaScript可以阻止这些检查。然而,这可能会干扰一些网站的正常功能。

使用浏览器扩展:

诸如Privacy Badger或NoScript之类的扩展可能会阻止尝试检测已安装字体的脚本,从而保护用户免受指纹识别。

更改浏览器设置

有些浏览器允许您管理对字体的访问权限。例如,在Firefox中,您可以通过隐私设置限制网站对系统字体的访问权限。

使用虚拟机或容器

在虚拟机或容器中启动网络会话时,使用最少的字体集可以将主系统字体集与网站隔离开来,从而使得创建准确的浏览器指纹变得困难。

如何在类似Undetectable的反检测浏览器中进行字体替换?

在 Undetectable 您可以控制浏览器的数字指纹及其所有组件。在创建新配置文件时,您可以在高级设置部分选择指纹的每个参数是如何生成的,包括字体。

模拟 - 通常默认情况下会设置此选项。选择后,字体将取自您的浏览器反检测配置。

系统 - 选择此选项 - 字体将从您的系统中获取

随机 - 最近,程序中添加了一个随机化数字指纹参数的选项。启用它后,每次创建配置文件时,字体指纹参数将随机生成,而不是从配置中获取。

undetectable.io - 自定义反检测浏览器中的字体替换

浏览器配置是什么,它们与其他反检测浏览器中的常规指纹相比,有何优势。

一个配置是基于真实浏览器和设备的精心策划的数据集。当您在创建浏览器配置文件时选择特定配置时,您系统的所有唯一指纹都会被该配置的指纹替换。这意味着您的配置文件将看起来就像一个真实用户,提供了最大的匿名性和安全性。由于其“真实性”,使用这样的配置可以让您避免封锁和侦测。

为什么类似Undetectable的配置比在其他古董上简单的印记好?

在其他反检测浏览器中,指纹生成通常是随机发生的,往往不考虑用户的操作系统,这可能导致出现不存在的浏览器指纹组合。例如,在Windows上运行时,您的指纹可能会包含来自其他操作系统的参数。

我们的方法独特之处在于每个创建的配置文件指纹的基础是一个真实的配置。这排除了指纹参数的不太可能的组合,从而增加了绕过反欺诈系统的可能性。每个配置只被一个人使用,最小化了重复的风险,增加了匿名化级别。因此,您的配置文件看起来尽可能自然,并与真实设备匹配。

在1456665处,您将获得免费配置,数量取决于所选择的资费。还有一个配置商店,如果需要,可以购买额外的配置。

作为结果

字体指纹识别是一种基于已安装字体和其渲染特征分析的强大用户识别方法。这种技术允许网站收集关于用户系统的独特数据,使其成为即使在使用私密浏览模式或清除 Cookie 文件时,追踪的关键工具之一。

了解字体指纹识别方法的重要性是不可否认的。诸如CSS字体加载、JavaScript字体检测、基于Flash的方法以及HTML5画布字体检测等技术允许识别用户设备上独特的字体集,从而创建准确且独特的指纹。

为了防止字体指纹识别并保持匿名性,重要的是使用专门的工具,如反检测浏览器。这些解决方案允许利用真实的浏览器和设备数据欺骗系统指纹,从而使识别过程变得更加复杂。特别是,反检测浏览器Undetectable提供了对指纹参数进行精细调整的能力,包括字体,提高了您的保护水平。