浅谈反浏览器指纹追踪

简介:

浏览器指纹追踪是在过去五年中出现的一种在网络上追踪用户的方法,为了反制浏览器指纹追踪行为,反浏览器追踪技术也在不断发展。

一、反浏览器指纹追踪技术概述

浏览器指纹识别的原理是根据不同浏览平台所使用的硬件类型、操作系统、浏览器类型、浏览器配置的不同,能够构建出独特的浏览器指纹。这个指纹有三个特性可以用来追踪用户:一、指纹的确定性,具有极低的碰撞率,至少能够从数千台设备中标识某一设备;二、指纹的易获取性,在用户在浏览网页时,Web服务器可以很容易获取指纹。随着浏览器中引入更新更强大的API,指纹追踪将变得更容易;三、指纹的稳定性,用户第一次浏览网页与第N次浏览网页产生的指纹是一样的。

本文简要介绍反浏览器指纹追踪技术。反浏览器指纹追踪只要打破上述指纹追踪的三个特性即可:

  • 指纹的确定性。要使两个浏览平台产生完全一样的指纹,目前暂未发现有效方法;
  • 指纹的易获性。可以使用浏览器的各种设置或插件来减缓追踪 [1],但这种方法可能会影响用户体验,例如无法使用Cookie和JavaScript;
  • 指纹的稳定性。来自法国 INRIA Rennes大学的研究人员皮埃尔·拉普里克斯博士提出了一个解决思路[2],可以组建一个动态的浏览平台,使用户每次浏览网页都产生不一样的指纹。

并且皮埃尔通过两种方法来打破了指纹的稳定性:

a) 利用虚拟化和模块化架构自动组合和重新配置多个级别的软件组件,随机生成浏览环境,为每个浏览会话产生随机的指纹,从而来模糊实际设备的指纹。作者开发了一个叫做Blink的原型系统[3];

b) 第二种是通过在指纹识别过程中引入足够的噪音,打破非常特定的指纹技术(Canvas,Audio,JavaScript引擎)的稳定性,使追踪者不能将新鲜的指纹与旧的指纹绑定在一起,从而使得跨越多个会话的跟踪变得不可能。作者基于Firefox开发了FPRandom[4]。

本文下面来重点介绍下Blink。

二、Blink工作原理

每两个浏览平台之间或多或少都存在一些差异,追踪者可以根据这个差异来定位追踪用户,所以浏览平台的多样性是浏览器指纹追踪问题的根源,但同时这也是解决浏览器指纹追踪问题的方案。平台间众多的差异部分为动态的浏览平台提供了的基础。

Blink利用虚拟化和模块化架构自动组合和重新配置浏览平台的组件,使得每次运行产生不同的指纹,追踪者不能轻易地找到彼此的联系[5]。图1显示了影响浏览平台指纹的元素:配置参数,例如语言,屏幕分辨率;软件组件,例如,浏览器,操作系统;硬件组件,如显卡,麦克风;跨级动态属性只能在运行时收集,例如canvas,,AudioContext。

Blink工作原理

一旦用户开始浏览网页,这些数据就用于创建指纹。这就是一般所认为的浏览器指纹。研究人员发现对指纹影响最显著的因素是字体、插件和用户代理。因此,选择专注于重新配置以下因素就可以达到改变指纹的目的:字体,插件,浏览器和操作系统。

Blink通过在运行时自动重新配置浏览平台的各个组件,来达到动态目标防御的能力。动态目标防御需要浏览平台使用模块化架构,以达到自动随机组装配置各个组件,而不是事先构建好它们。Blink属于一种动态平台,特点为:

  • 组装的平台总是表现出与真实浏览器一致的指纹,不是伪造的,因为平台是真实的;
  • 自动选择正确的配置,即由兼容组件组成并正确运行的平台;
  • 每次重新配置都会导致指纹的改变。

三、Blink实现

Blink在不同的层次组装多个组件,形成如图2所示的浏览平台。

Blink实现

Blink使用Docker作为背后的基础技术,因为Docker能够在运行时快速组装组件,同时将主机系统与平台隔离开来。Blink组装的组件有:

  • 操作系统:由于DockerHub的官方映像,许多操作系统都可以开箱即用。
  • 浏览器:直接从网络下载或从官方软件包存储库中下载,众多的浏览器用于产生多种指纹。
  • 字体和插件:皮埃尔创建了一个多样性的字体和插件库,Blink可以在创建浏览平台时选择其字体和插件。当前版本的Blink,包含超过2700种字体和超过30个插件。

只需要几秒钟,Blink就能产生一个全新的指纹,用户可以像本地浏览器一样使用它。为了避免产生明显另类于普通Web客户端的指纹,皮埃尔从https://amiunique.org收集指纹数据,优化Blink的配置文件,使Blink产生的指纹更接近于普通浏览器产生的指纹。结果显示Blink产生的指纹足以以假乱真。皮埃尔运行了Blink上千次,结果它们的指纹都各不相同,而且商业指纹解决方案无法知道这些指纹实际上来于自单个用户[6]。

四、总结

Blink通过生成随机浏览环境,每次会话都产生不一样的指纹,打破了指纹的稳定性,来减缓指纹追踪。Blink还实现了其他的反追踪方法,如:

  • 为了防止cookie追踪,当用户完成浏览时,所有生成的临时数据都被删除。
  • 为了防止IP追踪,Blink与Tor网络完全兼容。通过点击一个简单的按钮,所有具有Blink的Internet流量可以通过Tor网络重定向。

这些新方法允许用户在使用Blink时能有效的躲避追踪。

作者:ComSoc
来源:51CTO

相关文章
|
7月前
|
编解码 缓存 安全
用指纹浏览器为什么要搭配代理IP
指纹浏览器结合代理IP能有效提升网络隐私与安全。指纹浏览器通过生成独特用户标识防止追踪,但高级追踪技术仍可能暴露信息。代理IP可隐藏真实IP,增加匿名性,规避网络限制,并在指纹检测中混淆身份,增强安全。代理IP还能加速网络访问并提高稳定性。然而,选择可靠代理IP服务并遵守法规至关重要。
|
前端开发 JavaScript
前端使用fingerprintjs2获取浏览器指纹
前端使用fingerprintjs2获取浏览器指纹
2613 0
|
2月前
|
缓存 前端开发 算法
浅谈【JavaScript】的浏览器指纹?
浅谈【JavaScript】的浏览器指纹?
25 0
|
4月前
|
编解码 JavaScript 前端开发
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
128 1
|
5月前
|
数据采集 数据安全/隐私保护
Kameleo指纹浏览器进阶使用:轻松集成IPXProxy海外代理IP
Kameleo是一款出色的指纹浏览器,它能够帮助用户实现隐身浏览。大家在进行网络抓取的时候总会碰到一些阻碍,而采取指纹浏览器可以提升网络抓取的效率,并且集成代理IP能增加一层防护,让数据采集更加全面,为制定营销策略提供更好的支持。那如何将Kameleo指纹浏览器与IPXProxy海外代理IP集成?
|
5月前
|
安全 搜索推荐 数据安全/隐私保护
战斧指纹浏览器与IPXProxy海外代理IP的协同使用策略
战斧指纹浏览器是一家专注跨境用户的指纹浏览器,支持IP隔离技术,能够解决账号关联的问题。当然,用户在使用战斧浏览器的时候也可以搭配自有设备,其中IPXProxy的海外代理IP是不错的选择。那战斧指纹浏览器与IPXProxy海外代理IP如何搭配使用?
137 2
|
5月前
|
数据安全/隐私保护
YunLogin指纹浏览器与IPXProxy海外代理IP搭配使用的步骤详解
想要运营海外社交媒体账号,需要指纹浏览器和代理IP这两个实用的工具。YunLogin指纹浏览器是不错的选择,用户可以利用指纹浏览器来管理多个社交媒体账号,例如instagram,然后通过给浏览器环境设置不同的代理IP,降低账号关联的风险,确保每个账号都是独立运行。那如何将YunLogin指纹浏览器与IPXProxy海外代理IP搭配使用?
|
5月前
|
安全 iOS开发 MacOS
Dolphin指纹浏览器+IPXProxy代理IP:配置与使用全流程
通过代理IP,用户可以轻松绕过地域限制,访问全球范围内的网站和服务。不过想要同时使用多个代理IP的话,就需要借助指纹浏览器。Dolphin指纹浏览器和IPXProxy代理IP是大家常用的组合,这个组合为用户打造了一个既安全又高效的在线环境。下面是Dolphin指纹浏览器配置IPXProxy代理IP使用步骤,帮助大家更好了解这个组合。
143 3
|
5月前
|
安全
全面掌握Dolphin指纹浏览器:IPXProxy代理IP集成使用指南
对于需要管理多个社交媒体或电商平台的用户而言,Dolphin指纹浏览器提供了便捷的多账号隔离功能,搭配代理IP可以有效的防止账户关联。并且Dolphin指纹浏览器能够支持团队协作,方便团队进行互动、跟踪账户、查看代理状态。一些刚接触指纹浏览器的用户,不知道如何将Dolphin指纹浏览器和代理IP集成使用,下面以IPXProxy代理IP为例,带来详细的操作步骤。
|
5月前
|
数据安全/隐私保护
Dolphin指纹浏览器隐私保护升级:IPXProxy代理IP配置实战教程
Dolphin指纹浏览器采用先进的技术,让用户在一台电脑上就可以处理数百个配置文件。每一个配置文件都有着独特的浏览器指纹,极大的保障了用户上网的安全性。并且搭配代理IP一起,还能给每个文件配置不同的IP地址,让网络活动可以畅通无阻。下面给大家带来Dolphin指纹浏览器和IPXProxy代理IP配置详细教程