1

我一直在研究浏览器指纹识别并获得了该领域的一些知识。浏览器指纹的演示可以在panopticlick.eff.org找到。然而,我担心的一个问题是它们是多么容易被操纵,或者我认为是这样。据我了解,有两种方法可以操纵它们。

1. 直接操作它们

这是给定的,要更改指纹,您只需在浏览器中欺骗此类指纹脚本收集的值。例如,您可以欺骗:

a) 其他标头中的用户代理字符串。

b) JS-Elements-and-API's通过使用 ObjectDefineProperty 来编辑它们的值

c)更具体的指纹识别方法,例如通过安装操作指纹的扩展程序进行 Canvas 指纹识别

等等......

然而,这种方法对诸如WebGL 指纹之类的主动指纹识别方法不是很有效,因为它们不容易被欺骗。

但第二种方法更有趣一些,令人失望的是,关于它是否合理的信息并不多。

2. 在发送到服务器之前编辑数据

所以基本上,在脚本收集了所有信息之后,它(我在这里猜测)创建一个哈希然后将其发送到服务器,或者它将数据发送到服务器并在那里创建一个哈希。现在,如果出于恶意目的,我决心在特定站点上破坏浏览器指纹识别,我所要做的就是启动像Fiddler这样的应用程序,找到(可能)通过其将数据发送到服务器的 POST,然后编辑数据。对于那些不知道 Fiddler 是什么的人,它是一个应用程序,可以路由从代理通过您的网络发出的所有请求和响应,因此您可以在将任何请求发送到浏览器/服务器之前查看和编辑任何请求。似乎很容易。

我的问题

现在,因为我对所有请求-响应的东西都没有太多了解,这让我怀疑我的方法 2。所以最后我想问的是:

1)我对如何将浏览器指纹发送到服务器的了解是否正确?即,通过 POST。我相信应该是因为这是将数据传输到服务器的唯一方法?

2)如果可能,那么站点可以实施(或已经实施)什么样的对策来确保数据在发送到服务器之前没有被更改,或者至少,使它更难要完成吗?

3)是否有可靠的方法来捕捉这些方法?

4

0 回答 0