SHARE THE PERSPECTIVE

能:如果浏览器扩展拥有访问网页消息应用所需的权限,就可以在页面解密并显示消息后读取文本。这不需要破解参与者之间使用的加密,而是在访问内容已可读的端点之一。

并非每个扩展都能读取每个网站。风险取决于授予的权限、扩展的行为和浏览器环境。应审查这个范围,而不是认定所有扩展都是间谍软件,或认为上架官方商店就消除了风险。

内容脚本如何看到页面

Chrome 的内容脚本文档说明,内容脚本可以读取和修改其获准访问网站的文档对象模型,即 DOM。

这些脚本通常在隔离的 JavaScript 世界中运行:它们的变量与页面变量分离。不过,页面的 DOM 仍是共享界面。如果聊天消息或草稿存在于其中,JavaScript 变量隔离并不保证扩展无法读取这些文本。

这一差别很重要,因为扩展不必窃取私有加密密钥,也能捕获可读消息。普通的网站访问权限也不会自动赋予一切能力,例如无限制访问所有浏览器 Cookie;具体能力取决于额外权限和接口。

为什么 E2EE 无法解决端点访问问题

端到端加密保护授权端点之间的内容。应用必须让接收者能够阅读收到的内容,而已被攻陷或权限过大的本地环境可以访问这份可读副本。

密码学边界并不只是“网络套接字”,E2EE 也不只是传输加密。但它不是针对能够观察授权端点输出或输入的软件的通用防御。

同样,升级为后量子密钥交换,也不能阻止获准的扩展在草稿加密前读取它。

有帮助的控制措施,以及应避免的主张

控制措施 可以帮助什么 不保证什么
限制扩展的网站访问 限制获准脚本可运行的位置 扩展在仍获准的网站上值得信任
不添加扩展的独立配置文件 减少该配置文件的扩展暴露面 防范操作系统恶意软件或已被攻陷的浏览器
Web Workers 或不可导出的密钥 可降低特定密钥处理风险 后续显示给用户的明文的机密性
内容安全策略 限制某些页面脚本或资源行为 对浏览器授权扩展形成通用屏障
Shadow DOM 或 canvas 渲染 改变渲染和封装方式 对恶意本地软件形成可靠的安全边界

Manifest V3 改变了扩展的能力与规则,但并未取消文档中规定的获准内容脚本检查页面的能力。声称某种渲染技术使消息应用“免受扩展影响”,需要强得多的证据。

敏感聊天前审查 Chrome 权限

使用 Chrome 的扩展管理指南,检查已安装扩展及其网站访问权限。在功能可用时,将访问范围限制到真正需要的网站,或要求选中扩展后才激活。删除不再使用的扩展。

留意权限变化,但不要认为每次有害更新都必须请求新权限。代码可以滥用它已有的访问权。Chrome 的权限警告文档解释了新增权限何时触发警告。

无痕模式并不自动意味着没有扩展:Chrome 允许逐个启用无痕模式下的扩展。请检查实际配置。同样,不要把关于 Chrome 网页的主张不加区分地套用到具有不同运行环境的独立桌面应用上。

如果怀疑扩展泄露了消息

停止使用受影响的环境进行敏感通信。禁用或删除可疑扩展,更新浏览器,并检查剩余扩展及其权限。如果凭据或账户访问权可能泄露,请从可信环境检查账户会话,并遵循服务的恢复指南。

删除扩展可以阻止它今后在该浏览器中运行,但无法收回已经复制的内容。看起来正常的聊天记录不能证明没有发生泄露。

Livara 的边界

Livara 的威胁模型明确排除了对已被攻陷端点的保护。其 Proof Lab提供 APK 哈希检查和范围有限的密码学演示,而不是对浏览器会话没有恶意扩展的认证。

在可行范围内,尽可能缩小扩展权限的边界。强健的消息加密与可信的端点是相辅相成的要求。

在 Proof Lab 验证应用完整性
CONTINUE THE THREADPrivate messaging ↗
YOU’VE REACHED THE ENDBack to the reading room ↗