官方浏览器插件真的安全吗?

信息安全 网页浏览器 恶意软件 铬合金 火狐 浏览器扩展
2021-09-06 00:30:20

我在 Chrome 或 Firefox 上安装的几乎所有浏览器插件/扩展(无论是 Firebug、RESTClient 等)都会警告我,说:

[the add-on]可以:

  • 在所有网站上访问您的数据
  • 访问您的标签和浏览活动

现在,实际上,我没有时间(或技能)来阅读他们的源代码并验证是否存在恶意软件(例如其原作者放置的恶意软件)。

鉴于此,我是否可以安全地假设这些插件不会侵犯我的隐私,因为它们来自标准/知名且因此隐含受信任的地方,例如Chrome 网上应用店Firefox 插件站点Opera 的插件-在网站Safari 的扩展库EFF 网站上

即使是像HTTPS Everywhere这样的附加组件,您安装它以维护隐私并防止 MiTM 攻击,也会发出类似的警告。

有什么方法可以快速判断要安装哪些附加组件,而无需阅读其源代码?

3个回答

不能假设附加组件是安全的,“因为它托管在官方扩展库之一中”。

在这个答案中,我首先解释扩展如何最终出现在流行浏览器的扩展库中。最后,我专门为 Chrome 增加了一个部分。

商品如何在官方商店中列出?

  • 任何拥有 Google Wallet 的人都可以支付 5 美元,将最多 20 个扩展程序/应用程序上传到Chrome 网上应用店带有二进制组件 ( NPAPI ) 的扩展总是需要手动审查。其他扩展程序仅由 Google 的秘密扫描仪检查,如果需要,它可能会暂停扩展程序(“待审核”)。这个扫描器并不完美:两个月前,我发现了许多违反开发者计划政策的恶意扩展。(我已经提交了一些报告滥用表格;一些应用程序被删除了,有些应用程序没有被删除,即使它们包含相同类型的广告软件)。
  • AMO 上的所有Firefox 附加组件在提交时都会被放入审核队列。所有审查附加组件的编辑都必须遵循执行审查中所述的指南。扩展开发人员应该遵循这些说明
  • Safari 扩展可以提交到Apple 扩展库开发人员必须遵守本文档pdf的要求通过审核后,该扩展程序将在图库中列出。Apple 自己不托管扩展文件。通过审核后,该扩展将在相对安静的扩展画廊中获得显眼位置。单击后,会立即安装来自外部位置的扩展,无需确认。从 Safari 9 开始,如果需要,扩展程序可以选择在扩展程序库中托管扩展程序数据。
  • Opera 扩展库中的所有扩展都经过人工审核。只有通过审查(接受标准)才能列出扩展
  • IEGallery.com上的扩展和附加组件是人工审核的。审查标准虽然很模糊。此外,IE 扩展是编译后的代码,因此审阅者甚至无法确定附加组件是否安全。

自动更新

所有这四个库都支持扩展的自动更新。除非另有说明,否则将自动安装更新(除非用户关闭)。

  • Chrome扩展程序的更新会自动检查,有时还会进行人工审核。当扩展程序请求更多权限时,它们会自动禁用,直到用户确认新要求。开发人员文档提供了权限警告列表及其含义Google 还创建了一个页面(详细信息较少)来向用户解释警告 - 请参阅应用程序和扩展程序请求的权限

  • Firefox附加组件的更新是人工审核的。

  • 对Opera扩展的更新是人工审核的。Opera 放弃了旧的扩展生态系统,并在 Opera 15 中切换到类似 Chromium 的扩展 API。在 Opera 15(Opera 12.xx 及更早版本)之前,会自动安装更新。从 Opera 15 开始,添加新权限时会禁用扩展,就像 Chromium 一样(请参阅Github 上的此评论)。

  • 扩展库本身中托管的 Safari 扩展可能是 由 Apple 1检查,(更新到)其他地方托管的 Safari 扩展不是。从 Safari 9 开始,只有在 Apple 的扩展库中托管的扩展才能自动更新。

  • Internet Explorer 扩展不会自动更新,除非开发人员已构建此功能。

外部代码

如果供应商允许使用外部 JavaScript 代码,评论将毫无用处。那么,哪些画廊允许使用外部代码?

  • Chrome 扩展程序可能包含外部代码。
  • Firefox 和 Opera 禁止在附加组件中使用外部 JavaScript 代码。
  • Safari 扩展托管在不受 Apple 控制的服务器上,因此开发人员可以自由地包含他们想要的任何内容。
  • Internet Explorer 扩展通常是闭源编译的二进制文件,因此开发人员可以运行他们想要的任何代码。

隐私

许多扩展在未经用户同意的情况下收集使用统计信息。Chrome 甚至提供了关于在扩展程序中设置跟踪的教程......

铬合金

Firefox 和 Opera 在扩展平台的安全性方面做得很好。我不太信任 Chrome 网上商店,因为它不会手动审查所有扩展程序。

确保扩展程序安全的唯一方法是自己检查它。为此,我创建了“Chrome 扩展源查看器”Chrome 扩展这个扩展允许人们在 Chrome Web Store 中查看扩展的源代码。它附带了一个代码美化器,以使其更具可读性。

首先来看一个名为 的文件manifest.json,因为它定义了扩展的功能。你看到什么可疑的东西了吗?例如,承诺向 Facebook 添加笑脸的扩展程序是否为(=每个页面的匹配模式定义了内容脚本不要安装扩展。*://*/*

查看文件列表。你看到一个名为 的文件analytics.js吗?知道您将被跟踪。这不一定是错误的,但很高兴知道。在文件中查找_gaq.push,这是使用 Google Analytics 的标准方式。

最后一点:不要盲目相信扩展程序,因为它有大量用户。查看最近的评论并寻找任何危险信号。忽略通常的拖钓评论和“1 星 - 不起作用!” (除非它们很多),并专注于引起对隐私或安全性担忧的评论。


1. Apple 可能会执行这些检查,但未经证实。

这里有两个问题让我说不,你不能 100% 信任他们现在的原因是您没有在一侧查看代码。它可能包含一些恶意代码,这些代码是由流氓开发人员或组织故意潜入的。对于标准组织来说,这通常很少见,但也有一些案例,例如Apple 将跟踪数据发送到他们的服务器。

现在,通常(希望)会在质量保证(QA)过程中发现流氓东西(我无法想象 Google 和 Mozilla 没有严格的 QA 过程)。但没有什么是 100% 防水的。

即使你有源代码,你是否准备好仔细检查每一行代码?不,你不能,因为你没有时间也没有技能。

然后还有另一个问题......漏洞,无论项目是封闭的还是开源的,都存在可能允许攻击者访问您的数据的漏洞。无论是插件本身,运行插件的引擎,浏览器,或者如果我们把它拉得更广泛,操作系统。

安全性一直是与可用性的权衡。曾经有人告诉我,最安全的服务器是位于被地雷包围的上锁防空洞中的服务器,该防空洞已关闭这意味着虽然它是安全的,但它不可用。这是您需要牢记的。您的隐私可能存在风险,但这种风险是否会影响到能够正常使用程序?并不真地。

不,他们不是。但是如果它们是开源的(其中一些是开源的),你可以要求开发人员给你代码(如果它还没有在他的网站或某个存储库上发布,你可以自己编译它;或者如果它是为了web 等),您或其他人可以帮助您分析代码及其作用。除非您使用开源软件或在理想情况下可以查看代码的免费软件,否则没有其他方法可以 100% 确定。永远不要 100% 相信专有软件,因为除了作者之外没有人审查过代码(可能除了一些逆向工程师;)。出现了“坏”的浏览器插件,例如

http://www.pcadvisor.co.uk/news/internet/3212049/firefox-browser-add-ons-contained-malware/

或者最近

http://thenextweb.com/facebook/2013/05/13/microsoft-warns-users-of-new-malicious-chrome-extension-and-firefox-add-on-that-hijack-facebook-accounts/

但实际上,如果我们想与他人保持速度/效率,我们都被迫使用这些插件。所以最后,不幸的是,您需要冒一些风险并安装它们。