最近有人发现Chrome和Edge用户安装的扩展插件可以生成独一无二的“指纹”,结合GPU性能等其他数据,网络安全的Windows应用,以及屏幕分辨率、硬件配置,甚至安装的字体等,都可以准确追踪用户上网浏览的痕迹。一个名为“zoccc”的Web开发人员创建了一个名为“ExtensionFingerprints”的页面,该页面基于跟踪用户安装的插件。它包括1,000多个常见和流行的Chrome插件。用户只需点进去,网页就可以自动计算出用户安装了哪些插件,同时计算出访问过该网页的用户有多少人安装了相同的插件。这里我们首先说明一个网页一般是如何知道用户安装了哪些Chrome扩展的。开发者在开发Chrome扩展时,可以声明哪些资产属于“网络可访问资源”,这些声明的资产可以被其他网页或插件访问。早在2019年,人们就发现这些“网络可访问资源”可用于检查用户安装了哪些Chrome插件,并以此生成用户指纹。据zoccc介绍,为了防止检测,一些插件会偷偷添加一个证书,其他插件或网页要想访问这些“网页可访问资源”,就需要先有这个证书。然而,研究人员后来发现,包含秘密凭证的插件比不包含秘密凭证的插件需要更长的时间来访问“网络可访问资源”。因此,你只需要比较两者的时间差就可以知道用户是否安装了这些插件。在与BleepingComputer的沟通中,zoccc还表示,安装3个或更多Chrome插件已经可以让用户生成唯一的插件指纹。如果这些插件记录与时区或代理等其他用户数据一起使用,则可以轻松识别用户,也可以通过相同的方式检测Edge插件。笔者也点开了这个网页,发现只有0.004%的用户有和我一样的插件。当然,随着访问该页面的人数增加,这个比例也会增加,但即使是0.01%也可以算是对不同用户的非常准确的识别。所以笔者建议大家尽量少安装插件,只安装真正对自己有用的插件,或者干脆换成Firefox,因为Firefox的插件ID在每个浏览器上都是不一样的。
