Firefox 隐私加固( Harden Firefox, Firefox Hardening )系列第三篇:Firefox 对比 Chrome / Chromium 内核浏览器
前两篇博文,我们介绍了加固哲学、威胁模型等基本但是重要的概念、定义。接下来我们准备进入具体讲解环节。
一、大致介绍 Chrome/Chromium
除了 Firefox 可以通过 about:config、user.js 等方式进行深度强化外,值得注意的是:Firefox 即使保持默认设置,其隐私保护能力也已经高于 Chrome。
首先是 Enhanced Tracking Protection(ETP,增强型跟踪保护)。
Firefox 默认开启 ETP,会阻止大量已知跟踪器,包括社交媒体跟踪器、跨站跟踪 Cookie、加密货币挖矿脚本等。相比之下,Chrome 长期以来并没有像 Firefox 一样默认提供同等级别的跨站跟踪防护。
其次是 Total Cookie Protection(TCP,总 Cookie 保护)。
传统浏览器中,第三方 Cookie 可以被广告网络用于跨网站追踪。例如:
你访问网站 A:
网站 A ↓ 加载广告公司 B 的 Cookie
之后你访问网站 C:
网站 C ↓ 再次加载广告公司 B ↓ 读取之前的 Cookie
于是广告公司 B 可以知道:“这个用户访问过 A,又访问了 C。”
Firefox 的 Total Cookie Protection 改变了这种机制。
它采用类似 Cookie Jar(Cookie 罐)隔离 的方式:
网站 A └── B 的 Cookie(只能用于 A) 网站 C └── B 的 Cookie(只能用于 C)
即使是同一个第三方服务,也无法简单通过 Cookie 将不同网站的浏览行为串联起来。Firefox 已经默认启用该保护,无需用户安装扩展。
这意味着:
普通用户即使不知道什么是:浏览器指纹( Browser Fingerprinting )、 RFP ( Resist Fingerprinting )、 uBlock Origin 、 about:config ;仅仅下载 Firefox 并正常使用,也已经获得了一层比传统 Chrome 默认状态更强的隐私保护。
二、Firefox 与 Chrome/Chromium等内核浏览器对比
1、 1、(先科普何为 MV2、MV3。全称为 Manifest Version 2、3。浏览器内部给予扩展调用的接口,如果无接口,扩展无法实现对应功能)Chrome 138(2025年7月)起 MV2 已在稳定版失效,完整版 uBlock Origin 在 Chrome 上不可用;Firefox 明确承诺继续支持 MV2 与 MV3 并存。虽然一些浏览器正在完全淘汰 Manifest V2,Firefox 仍将其与 Manifest V3 并存保留。意味着 uBlock Origin在 Firefox 功能更多、保护隐私更好。另:即使在之前 Chrome 保留 MV2 的时候,因为 Firefox 提供的接口更多更完善、开源, uBlock Origin 作者直接说明,在 Firefox 屏蔽效果更好更彻底,例如在浏览器启动的时候, uBlock Origin 跟随 Firefox 启动,启动时即可完成屏蔽;但是 Chrome 无法做到。
可以 2、Ctrl+F 搜索网页内容的时候,勾选“全词匹配”以精准匹配,从而只匹配完全一致的词,而不是像 Chrome 那样自动匹配到相同词根或派生词。例如搜索“ run ”时, Firefox 可只匹配“ run ”,而不会匹配 “ running ”、“ runner ” 等词形变化。对科研、技术文档、代码页面的搜索非常有用。
3、 4、给予用户用户图形界面极大可定义自由度,甚至可以用 userChrome.css 来自定义(这个“ Chrome ”可不是 Chrome 浏览器,而是“浏览器用户图形界面”的意思 😉 要知道,Firefox浏览器及其前身网景浏览器( Netscape Navigator )可是比 Google Chrome 诞生还要早很多!)!你可以通过 userChrome.css :隐藏或重新排列按钮;修改字体、颜色;调整标签栏样式;甚至完全改造成你自己的专属 UI。
4、 5、Firefox允许在 about:config (本系列第一篇提到过,是修改 Firefox 隐藏配置项的地方) 里予用户调试各种功能的权利,且比同样是 Chrome 调试的地方的 chrome://flags 稳定,何时添加和取消也更加透明公开;且可以通过 user.js(第一篇提到过) 持久和个性化保存修改。并且更换设备等 user.js 的方便显而易见,直接复制带走、放入新 Firefox 的对应目录就可以了!后面篇幅我会讲解在 Firefox (隐私)强化( Firefox Hardening )里,应该修改 about:config 和 user.js 等里什么选项和如何修改!
5、 6、(接上条)因为 Firefox 开放开源,为自由软件( Free Software ),所以Firefox的安装文件其实是一个7z压缩文件,你可以通过修改文件后缀的方式打开它,然后放入 user.js 、 userChrome.css 等文件,将其做成一个便携版( Portable ) Firefox !(注:英文当中“免费软件”、“自由软件”都可称为“ Free Software ”,但是搜索结果显示,“ Free Software ”更多是指“自由软件”;所以这点汉语比英语精准 😉 所以近年来我观察到有时会用“ freeware ”这个组合词来表示“免费软件”,所以“ Free Software ” 指“自由软件”愈来愈根深蒂固了!)
6、 7、 Firefox 更隐私和方便定制,具体后面将阐述。
7、 8、 Firefox 因为率先大规模采用 Rust,并资助了 Rust 早期的发展, Rust 有“生命周期”、“内存所有权”概念,内存更安全,Rust 通过所有权(Ownership)、借用(Borrowing)和生命周期(Lifetime)等机制,在编译(是指将你的代码变成机器物理层能读懂的指令)阶段防止大量内存安全错误,和无权限修改这块内存地方坚决禁止修改,只能读取。所以出现“缓冲区溢出( Buffer Overflow )”、“栈溢出( Stack Overflow ,我在一语双关)”、“指针错误使用”等内存错误概率更小,恶意行为溢出更少。溢出简单来说,相当于洪水冲垮堤坝,洪水到了不该出现的地方。即骇客破坏者可以读取到不该读取的数据。“指针错误使用”简单来说就是使用后应该清空的硬件的地方未清空,骇客们可以利用这个硬件的地方可能有特权,让恶意代码可以在此提权,获得更高权限。
9、虽然 Firefox 从120开始,【目前】默认信任系统证书,但是因为可以不信任系统证书而只信任自带的证书库,且自带证书库也可个性化定制(第一篇讲过什么是证书), 而证书可以【解密】你的互联网流量;Chrome 依赖操作系统证书库,普通用户很少会去改,而企业只需修改系统证书库即可监视 Chrome 。因此,如果企业想要监视你的浏览器流量, Chrome 的话直接在你的电脑内植入企业的根证书即可,而 Firefox 则难上加难。
10、 Firefox 占用资源更少。Mozilla 在 2017 年 Firefox Quantum(57 版)发布时的官方新闻稿中曾提到,得益于活跃标签页优先加载和多进程架构,Firefox Quantum 通常比 Chrome 更快,内存占用约少 30%。这个数字特指 Quantum 发布当时、针对当时的 Chrome 版本做的对比,不是持续更新的官方数据——目前 Mozilla 官网已不再沿用这个说法,实际内存表现会因具体版本、标签数量、测试场景而有很大差异。但目前官网已改版,这条具体表述已不再出现在当前的宣传页面中。
11、 Firefox 开启抗指纹追踪 RFP 后能极大降低浏览器能调取的时钟精度,减少网站可以收集到的隐私。且 Firefox 本身不会收集鼠标指纹。
12、 Firefox 开启 RFP 后,会限制网站获取部分浏览器环境和行为相关信息,例如降低时间相关 API 的精度、限制部分高精度计时能力,从而减少网站通过环境差异和行为侧信号构建浏览器指纹的能力。例如,一些网站可能利用高精度计时器、页面状态变化、 API 返回差异等信息分析用户环境或行为特征,而 RFP 会降低这些信息的精确程度,使这类分析更加困难。实测中,开启 RFP 后,部分依赖页面可见状态、计时器精度的网站行为可能出现变化。例如,某些网页可能无法准确判断用户是否切换到其他标签页。但这并不意味着网站完全无法获取播放、点击等服务器端行为数据。
评论
发表评论