即将http://panopticlick.eff.org/我发现 Firefox 和 Chrome 公开了更多关于“系统字体”和“浏览器插件详细信息”的信息,这比我喜欢的要多。
如何在 Firefox 和 Chrome 中禁用网页访问这些设置的权限?
答案1
有两个问题,但我正在回答字体列表的问题:
可以使用mms.cfg
系统范围的配置文件禁用 Flash 字体枚举。如果您使用的是 Linux,则此文件应位于/etc/adobe/
目录中。基本上,您只需要在文件中放入以下行:
DisableDeviceFontEnumeration = 1
查看Adobe Flash Player 管理指南更多细节。
通过此设置,Panopticlick 和其他网站无法通过 Flash 获取您的字体列表。
请注意,如果您安装了 Java,字体列表仍然可以通过 Java 获得。无论如何,最好还是放弃 Java。如果您使用几个需要 Java 的网站,请使用不同的浏览器实例和不同的用户配置文件,并只为这些网站启用 Java。
答案2
答案3
字体指纹识别只是浏览器指纹识别的一小部分。如果目的是让浏览器仍然正常运行,那么完全阻止它几乎是不可能的。据说最好的通用指纹保护是在 Tor 浏览器中。
实际测试发现,试图阻止字体指纹识别实际上会增加计算机指纹识别的独特性,因为大多数用户不会这样做。避免指纹识别的最好方法是不做任何特别的事情,与成千上万的其他用户融为一体。
防止字体指纹的第一步是测试你将采取的任何防御措施的有效性。这里有一个好工具https://browserleaks.com/fonts. 一个很好的工具来识别一般指纹的独特性是 https://panopticlick.eff.org/(在过去 45 天内测试的 199,984 个浏览器当中,我自己的浏览器是独一无二的)或者 我是独一无二的吗。
为了保护 Chrome,您可以采取的措施包括:
- 安装强化的 Chromium 版本
- 使用扩展(我还没有测试过它们的有效性):
- 字体字形指纹隐私白名单
仅允许检测随 Windows 安装的默认字体列表。 - 字体指纹保护程序
它会在实际指纹上添加一点噪音,并在您每次访问网站或重新加载页面时“更新”它。 - 不要给我按指纹
在 Chrome 的开发者工具中添加一个选项卡,显示浏览器指纹识别尝试。
- 字体字形指纹隐私白名单
在 Firefox 中获取保护
Mozilla 目前正在开展 Tor Uplift 项目,其目标是在 Firefox 中建立与 Tor 浏览器相同级别的抗指纹识别能力。该项目正在进行中,并在文章中进行了描述 安全/指纹识别。
您可以尝试使用 Firefox 强化脚本 Github ghacks-user.js,尽管据报道称,这可能太多了,实际上会损害浏览体验。
至于附加组件,页面上有一个有用的附加组件列表和其他建议 Firefox 调整。
目前,我所知道的专门针对字体指纹识别的措施是 关于:配置设置:
右键单击并选择新建 > 字符串,创建新参数
font.system.whitelist
,它将列出 JavaScript 将看到的字体。一个示例有效值是Helvetica, Courier, Verdana
。更改立即生效。
就我而言,这减少了我自己的 字体指纹 从 512 种字体列表中的 266 种字体和 238 种独特指标,到“仅”有 28 种字体和 9 种独特指标。(我不知道这会对浏览产生什么影响。)privacy.resistFingerprinting=true
是启用 Tor Uplift 项目中实施的隐私措施的通用开关。它允许分发统一的字体列表。Mozilla 不建议启用它,因为它会破坏某些网站。通过更改以下值来禁用“允许网站使用自己的字体”选项和 CSS 字体加载 API:
browser.display.use_document_fonts = 0 layout.css.font-loading-api.enabled = false font.blacklist.underline_offset = (empty string) gfx.downloadable_fonts.enabled = true gfx.font_rendering.opentype_svg.enabled = false gfx.font_rendering.graphite.enabled = false
(这很可能会降低浏览速度。)
需要指出的是,我已经看到了讨论的复杂字体指纹识别和绘图方法,甚至可以识别显示卡和图形驱动程序。
我的想法 :指纹无法避免 - 字体不是一切。即使你:
- 使用 VPN
- 从原始 Windows 虚拟机进行浏览
- 不安装字体或其他软件
- 安装最广泛使用的浏览器 - Chrome,无需任何扩展程序
- 使用隐身模式浏览,禁用所有 Cookie 和扩展程序
那么这些独特的保护方法以及虚拟机中仍可检测到的硬件元素很可能仍会形成独特或几乎独特的指纹。更不用说这种环境将很难使用。
有关一些已知指纹识别方法的讨论,请参阅以下文章:
浏览器指纹识别——解释与解决方案 (从 2019 年开始)
包含比我上面列出的更多的信息和技巧。新的指纹识别技术 (自 2017 年起)
答案4
Javascript 能够检查安装了哪些插件,这通常用于在需要时显示“安装缺失插件”消息。如果您愿意,您可以在设置中禁用插件,并使用 Chrome 的 Javascript Blacklist 或 Firefox 的 Quick Java statusbar 等插件禁用 Javascript。