浏览器指纹

浏览器指纹根据浏览器公开的信息来识别或识别浏览器。 站点可以比较访问期间的请求标头、屏幕设置、字体、时区、图形输出以及其他浏览器或设备信号。

浏览器内没有存储永久指纹。 结果由收集器创建。 一项服务可能依赖于一小部分稳定属性。 另一个可能会检查数十个值,并在其中一些值发生变化时接受接近的匹配。

这种灵活性使得指纹识别对于登录安全、欺诈检查、分析和广告非常有用。 这也使得这种做法很难从一个暴露的值来判断。 重要的问题是收集哪些信号、如何匹配它们以及服务如何处理结果。

浏览器指纹如何工作?

收集在页面完成加载之前开始。 一些信息随请求到达服务器。 当页面检查浏览器时,更多内容变得可用。 然后收集器准备这些值以供比较。

被动收集

该请求已包含用户代理、用户代理客户端提示、接受的语言和其他 HTTP 标头。 服务器可以检查这些值,而无需在页面中运行脚本。

它还可以查看公共 IP地址。 风险系统经常将IP与浏览器数据进行比较,但两者不应被视为一回事。 IP 描述连接。 它没有描述使用它的浏览器。

主动收集

然后,该页面可以询问请求中未出现的详细信息。 JavaScript 可以读取屏幕、语言、时区、触摸和广泛的硬件值。 它可以测试字体、媒体支持、图形行为和 API 功能。 CSS 也可以揭示一些功能。

渲染测试添加了另一层。 站点可以绘制图像并检查 Canvas 输出。 它可以通过WebGL 指纹测试查询GPU相关值。 它还可以通过 Web Audio API 处理合成信号以进行 音频指纹。

每个结果本身可能是常见的。 这种组合缩小了范围。

组合和匹配信号

收藏家很少比较每个原始价值的表现。 他们可能会标准化文本,将硬件值放入范围内,并忽略经常更改的字段。 处理后的结果可以成为散列、特征集或风险评分。

该哈希值属于创建它的收集器。 不同的工具可能会选择其他字段或以其他顺序处理它们,因此同一浏览器可以接收不同的哈希值。 搭配也可以很灵活。 如果一个值在更新后发生变化,而其余值保持不变,则系统仍可能连接访问。

浏览器指纹中可以使用哪些信息?

更强的指纹混合了来自浏览器环境的多个部分的普通值。

  • 请求元数据包括浏览器系列、版本、操作系统声明、首选语言和客户端提示。

  • 显示信息包括屏幕尺寸、可用屏幕区域、颜色深度、像素比和浏览器窗口大小。

  • 区域设置包括时区、区域设置、日期格式和语言顺序。

  • 浏览器功能涵盖支持的媒体格式、触摸支持、插件、存储功能和选定的 API。

  • 广泛的硬件信号包括处理器核心数量、内存类别、图形信息和输入功能。 它们描述了一类设备,而不是硬件序列号。

  • 渲染信号包括 Canvas 输出、WebGL 元数据、着色器行为和 AudioContext 结果。

  • 本地配置会影响字体、扩展名、辅助功能设置和其他浏览器行为。

TLS 握手、IP 信誉、cookie、登录历史记录、鼠标移动和请求计时通常出现在同一风险系统中。 它们添加了上下文,但它们并不都是浏览器指纹属性。 将每个可用信号视为指纹的一部分隐藏了证据的来源。

浏览器指纹唯一且稳定吗?

独特是关于数据集的声明,而不是关于整个互联网的声明。 标准笔记本电脑上的通用浏览器可能与其他浏览器共享许多值。 罕见的屏幕尺寸、不寻常的字体集和不常见的图形配置可能会缩小群体范围。 同样的结果在一项测试中可能看起来很少见,而在另一项测试中却很常见。

稳定性也有极限。 指纹可能在多次访问后仍然有用,但其部分内容会因常规原因而发生变化:

  • 浏览器和操作系统更新

  • 图形驱动程序更改

  • 添加或删除的字体和扩展

  • 不同的屏幕或窗口尺寸

  • 语言和时区更改

  • 隐私保护设置

  • 收集器本身的变化

改变的结果并不能证明出现了新的人或设备。 结果不变并不能证明是同一个人返回。 指纹支持匹配。 它本身并不解决身份问题。

浏览器指纹有什么用?

为了帐户安全,逻辑很简单。 服务将当前登录与之前的活动进行比较。 无法解释的更改可能会导致额外的验证。 欺诈系统在做出决定之前会添加帐户历史记录、交易详细信息和网络声誉。

指纹识别还支持 Bot 检测。 一个声称暴露了其他浏览器系列功能的浏览器值得仔细审查。 它仍然不能证明自动化。 请求模式、自动化跟踪、会话历史记录和行为提供了上下文的其余部分。

跟踪造成了主要的隐私问题。 清除 cookie 后,指纹可以帮助分析或广告服务识别浏览器。 跨站点跟踪仍然需要收集器接收来自不同站点的观察结果并将它们连接起来。

读取浏览器信息不会自动进行指纹识别。 站点可以检查屏幕尺寸的布局或查询 WebGL 以显示图形。 当脚本收集不相关的信号、组合它们并使用结果来识别以后的访问时,收集会变得更有意义。

浏览器指纹与其他标识符的比较

这些机制都可以帮助识别回访者,但它们收集的证据不同。

Cookie 在浏览器中存储一个值,以便网站稍后可以读取它。 指纹是根据可观察到的特征计算出来的。 清除 cookie 不会更改字体、屏幕设置、图形输出或浏览器功能。

这种区别并不意味着指纹识别不会留下任何记录。 公司可以将计算结果或相关访客记录存储在其服务器上。 它根本不需要客户端标识符来执行初始比较。

Cookie 隔离 可以阻止选定的浏览器存储跨上下文重复使用。 它不会改变每个指纹信号。

浏览器指纹和设备指纹

浏览器指纹使用通过浏览器或 Web 请求提供的信息。 设备指纹可以触及更远的地方。 移动应用程序可以访问普通网页无法读取的应用程序数据、设备设置、传感器或平台标识符。

供应商有时会互换使用这些术语。 上下文比标签更重要。 在将两者视为相同之前,请检查系统实际​​收集的数据。

浏览器指纹和 TLS 指纹

TLS 指纹 检查客户端如何启动加密连接。 它可以查看 ClientHello 结构、扩展顺序、支持的协议以及相关的传输行为。

通过 用户代理欺骗 更改浏览器面向的值不会自动重建 TLS 握手。 风险系统可以比较两个层,但它们来自连接的不同部分。

行为也值得同样的区别。 鼠标移动、打字节奏、导航和请求率描述了活动。 它们可能与浏览器指纹结合在一起,但它们不是静态的浏览器特征。

如何阅读浏览器指纹测试

从指纹测试中的值开始,而不是最终的徽章。 该测试展示了一位收藏家可以看到的内容。 它无法提供通用的安全评分。

掩盖您的踪迹 将浏览器与自己最近的数据集中的访问者进行比较。 AmIUnique 还报告所选属性与其数据集的比较情况。 BrowserLeaks 指纹测试 提供各个浏览器界面的详细值。

按以下顺序读取结果:

  1. 在相同的浏览器配置文件中多次运行相同的测试。

  2. 在关注最终哈希之前先查看基础值。

  3. 比较同一工具在相似条件下的结果。

  4. 请注意浏览器、驱动程序、扩展程序或隐私设置在测试之间是否发生更改。

  5. 将唯一性视为有关该工具样本的声明,而不是整个互联网。

警告指出异常或不一致的值。 它无法预测另一个平台会做什么。 通用结果也不能提供任何保证,因为 Cookie、登录数据、IP 历史记录和行为仍然可以识别访问者。

您可以防止浏览器指纹吗?

没有任何一个开关可以在不影响网络的情况下删除每个指纹表面。 有效的防御措施可以是阻止收集、减少细节、标准化值或引入受控变化。

阻止和限制收集

跟踪器拦截器可以阻止已知的指纹识别脚本。 浏览器还可以降低公开值的精度或限制对本地字体和硬件详细信息的访问。 Firefox 指纹识别保护 将对已知指纹的阻止与对选定浏览器信息的限制结合起来。

阻止会错过由站点直接提供的新收集器和脚本。 严格的控制还可能破坏图形、字体、视频效果和其他合法功能。

标准化参数值

标准化使许多浏览器报告相同或相似的值。 Tor 浏览器的指纹识别方法 旨在帮助用户融入一个共同的群体。

大量定制可能会削弱这种方法。 不寻常的扩展、字体集或窗口大小可能会将一个浏览器与其原本相似的组分开。

随机化选定的输出

随机化会更改选定的值,因此它们对于链接访问不太有用。 Brave 的指纹防御 描述了一种将受控变化应用于可指纹输出的方法。

有用的随机化不会改变每个请求的每个值。 不协调的变化会产生矛盾并可能导致站点故障。

禁用浏览器功能

关闭 JavaScript 或图形 API 可以减少一些主动指纹识别。 它还可以破坏登录页面、地图、编辑器、视频工具和其他常见服务。 被动请求数据仍然可见。

VPN 本身并不能解决这个问题。 它更改网络路由和公共 IP地址,而不是完整的浏览器配置。 隐身模式主要限制私密会话结束后的本地历史记录和存储。 它不会删除访问期间可见的屏幕、字体、浏览器版本或图形行为。

与一堆每个都更改一个值的扩展程序相比,具有协调保护功能的浏览器通常是更好的隐私选择。 让每个字段变得不寻常可以让浏览器更容易注意到。 实际目标是在不破坏正常浏览的情况下减少可靠识别。

浏览器指纹常见问题解答

简单来说什么是浏览器指纹?

它是一种通过可见特征的组合来识别浏览器的方法。 这些可以包括请求标头、屏幕设置、字体、时区、浏览器功能和渲染结果。

浏览器指纹可以改变吗?

是的。 浏览器更新、操作系统更改、驱动程序、字体、扩展、显示和隐私设置可能会更改指纹的部分内容。 如果足够多的信号保持相似,匹配系统仍然可以将新结果与较早的结果连接起来。

清除 cookie 会更改浏览器指纹吗?

清除 cookie 会删除存储的站点数据。 它不会自动更改用于计算指纹的浏览器和设备特征。 网站还可以同时使用 cookie 和指纹识别。

VPN 或隐身模式是否会停止浏览器指纹?

不。 VPN 改变网络路由和公共 IP。 隐身模式限制本地历史记录和存储持久性。 两者都不会删除所有面向浏览器的信号。

相同的指纹是否意味着相同的设备?

未必。 通用设备可以共享相同的值,并且多个人可以使用一台设备。 指纹是两个环境看起来相似的证据,而不是物理设备或个人身份的证明。

为什么指纹测试显示不同的哈希值?

每个测试都会选择自己的信号、标准化规则和哈希方法。 因此,两个工具可以为同一浏览器生成不同的哈希值。 在将一种工具与另一种工具进行比较之前,先比较同一测试中的变化。

要点

浏览器指纹将普通的浏览器详细信息转化为可以在访问期间进行比较的证据。 结果是有用的,但其本身并不是结论性的。 声音读数着眼于收集器、样本和其他涉及的信号。 良好的保护会减少可靠的识别,同时保留足够的浏览器行为以使网站正常工作。

开始使用 MoreLogin 构建

探索 API 文档,通过命令行实现自动化,连接兼容 MCP 的工具,或创建可复用的 RPA 工作流。