规避设备指纹

信息安全 匿名
2021-09-08 13:13:31

关于设备(浏览器)指纹识别的概念,用户是否有可能通过提供随机信息来欺骗指纹数据,这样您的指纹在每次请求后都会发生变化?

如果是这样,是否有任何具有此功能的插件/浏览器?

4个回答

据我所知,您可以轻松欺骗所有指纹数据,并可能在每次请求时更改它。所有这些信息都由您的浏览器在请求的 HTTP 标头中发送(或通过浏览器客户端脚本获取)。我不知道完全支持此功能的特定插件,但有一些插件可用于更改用户代理操作标头管理 cookie用户代理是指纹识别过程的主要识别信息之一,大多数其他信息都在其他各种标头中。也可以阻止 javascript/flash 脚本,例如使用noscript 插件

然而,更改此指纹信息确实需要付出代价。它可能会导致网站以不同的方式显示页面,从而导致网站看起来错误或无法正常运行。许多网站开发人员依赖(至少部分)此指纹信息,以使他们显示的页面与您的浏览器兼容。因此,隐藏/欺骗此信息将影响此过程,并且您的浏览体验可能会改变

出于合法的安全原因,也可能执行此指纹识别例如,具有安全意识的网站可能会将指纹信息绑定到会话或登录用户,并且会拒绝指纹不匹配的请求(这会向服务器表明请求现在来自不同的浏览器)。这是另一个问题的另一个示例,其中网站所有者希望在允许访问之前测试浏览器的浏览器插件版本(这是指纹数据的一部分)。我不知道任何使用这种技术的特定站点,但这绝对是可行的。每次请求都更改指纹数据将再次导致不良行为。

我认为对特定标题执行一些小的随机调整将在不影响浏览体验的情况下实现更好的匿名性以防止指纹识别。这需要一些实验,并且可能意味着安全性和可用性之间的折衷。

kkapsner 有一个名为 CanvasBlocker 的 Firefox 浏览器插件,它声称能够以几种不同的方式阻止画布指纹识别。我发现最有趣的块模式是“假读出 api”,据说它在被调用时会发送假数据;但是,用户可以选择其他方法,例如阻止所有请求,仅在黑名单上阻止站点,不在白名单上阻止等。但是正如 Shnatsel 上面指出的那样,除非您有权访问,否则无法检查结果指纹提供者。此外,正如 Yoav Aner 在上述帖子中所说,阻止或欺骗某人的指纹可能会破坏某些网站。开发者 kkapsner 也描述了这个特殊问题。有关此扩展的更多信息,请访问https://github.com/kkapsner/CanvasBlocker. Firefox 扩展可在https://addons.mozilla.org/en-US/firefox/search/?platform=windows&q=CanvasBlocker获得。快乐冲浪!

是的,这可能是可能的。但是,我不知道有任何浏览器或插件支持欺骗指纹或在每次请求时更改指纹。

如果您想保护您的匿名性并保护自己免受指纹识别,我建议您结合使用 Tor(通过 Tor 捆绑包安装它),可能与 NoScript 一起使用。

不,这几乎不可能。它有几个问题。

避免指纹识别的主要问题是我们对它的实际工作原理知之甚少,因此我们不知道如何规避它。

每个人似乎都认为Panopticlick是指纹识别的参考框架。理论上,你可以通过众包指纹或多或​​少地绕过 Panopticlick。但是 Panopticlick 是一个非常有限的演示。白皮书明确指出,即使在 2009 年 Panopticlick 创建时,商业指纹识别解决方案也更加先进:

Arcot... 声称它能够确定 PC 时钟处理器速度,以及更常见的浏览器因素,以帮助识别设备。41st Parameter 着眼于 100 多个参数,其算法的核心是一个时差参数,用于测量用户 PC(精确到毫秒)和服务器 PC 之间的时间差。ThreatMetrix 声称它可以检测 TCP/IP 堆栈中的异常情况并可以穿透代理服务器... Iovation 提供设备标记(通过 LSO)和无客户端 [指纹],其声誉数据库最为突出,该数据库拥有数百万的数据个人电脑。

这是在 2009 年!我不敢想那些家伙从那以后想出了什么。

另一个问题是,如果您经常更改时钟偏差,则无法检查这是否有帮助,除非您可以访问所有主要指纹识别提供商的管理控制台。

这就是为什么没有软件可以绕过指纹识别:没有人真正知道如何对抗它。所以我们可能不得不处理它。