为什么 Google 不能直接向用户推送 Android 安全更新?

信息安全 安卓 谷歌 打补丁 更新 脆弱性
2021-09-06 18:45:35

好的,我将从问题开始,然后在下面详细说明。它是:

为什么全球领先的非苹果智能手机操作系统制造商谷歌仍然没有采用直接面向用户的模式为 Android 分发安全更新,而是坚持目前明显存在严重缺陷的依赖手机制造商的方法和无线运营商快速测试、批准和分发它们?如果 Google 真的想这么做,那么将 Android 迁移到直接更新模式的技术障碍到底有多大?


因此,昨天出现了一些关于 Android 中有趣的 Stagefright 媒体播放器组件安全漏洞的坏消息。首先,同一组件中的一些新公布的缺陷似乎将受影响的 Android 手机的范围扩大到几乎所有曾经制造和销售的手机。其次,在同一个组件中显然存在更多的缺陷,这些缺陷已经向谷歌披露,并且正在准备很快公布,包括一些将被贴上“关键”标签的缺陷。我对 Android 安全场景并不十分熟悉,但这似乎是迄今为止 Android 必须处理的最重要的安全事件。

当然,在任何平台上发现可怕的漏洞总是会导致下一个问题:“我的设备什么时候会被修补?” 不幸的是,现在 Android 安全更新的工作方式——谷歌将它们推送给硬件制造商和运营商,他们必须签署并愿意将更新分发给用户——绝大多数 1十亿以上的 Android 用户只能期待以下两个答案之一:

--对于幸运的人:这将是几个月。(同样在上面链接的这份报告引用了一个估计,即从谷歌获得补丁通常需要 9 到 18 个月才能通过测试和对用户手机的各种批准。现在,人们假设使用 Stagefright 将一定要快点,但还是……)

——对于不幸的人:从不。(一些安卓制造商几乎没有为他们的手机提供任何售后更新服务。其他的似乎有一个不成文的支持期限限制,可能是一年,或者两年,之后用户就会被冷落。)

所有这些都提出了一个问题:为什么谷歌不能像为其他计算机制造操作系统的公司所做的那样——例如个人电脑和服务器——绕过原始设备制造商和服务提供商直接向用户提供安全更新?

现在,显然这可能既有技术方面的问题,也有业务方面的问题。我更多地从技术方面考虑(尽管我承认有时两者并不像人们想象的那样容易分开)。谷歌可以通过哪些方式直接发布安全更新——但不一定直接发布任何涉及修复安全漏洞之外的任何更新——导致硬件和/或软件兼容性问题,这对于用户、手机制造商、运营商和谷歌本身来说可能非常麻烦,以至于这个因素可能超过获得这些补丁的价值比他们在当前系统下可能实现的更快、更远、更广泛?还是真的像 99% 的安全新闻记者和评论员认为的那样,支持 Google 直接分发?

3个回答

问题的症结在于,除了少数几个值得注意的例外,每部手机都配备了 Android 的一个分支,而不是谷歌编写的软件。因此,Google 不能推动三星手机的变化,就像 FreeBSD 不能推动苹果 Macbook 的变化一样。

Android 是开源的,这有点不寻常。这是具有如此规模用户群(14 亿用户且增长迅速)的主要消费者操作系统第一次成为开源项目,而不是中央控制的项目。我们已经习惯了操作系统的创建者能够负责更新它的想法。正如这个问题所证明的那样,我们以某种方式期望谷歌能够控制安卓,就像微软控制 Windows 和苹果控制 iOS 一样。

但是,通过允许三星、索尼和摩托罗拉等公司发布他们自己的修改版Android,谷歌放弃了这种控制权,而且他们无法将其夺回。然后,三星不仅接管了他们自己的 Android 风格的控制权,还接管了保持更新的责任。通过允许 Verizon 分叉三星的版本,三星现在将控制权责任都交给了 Verizon。

从理论上讲,这一切都有效;从理论上讲,Verizon 将与 Google 一样负责任和可靠。除非他们不是。

所以有三种可能的解决方案。任何一个:

  • 制造商可以开始对其操作系统承担更多责任。由于三星的安卓系统属于三星,除非三星主动更新它,否则我们将一事无成。如果三星也允许他们分叉代码,这可能需要与 Verizon 等公司进行一些合作。这或多或少是现状,但更多的是一厢情愿。

  • 谷歌可以收回对 Android 的控制权。通过改用闭源许可证,他们可以施加许可限制,例如要求三星等公司在有限的时间内推出补丁。当然,如果谷歌走这条路,那么关于他们是多么“邪恶”和“反消费者”的呼声将永无止境,尽管事实上他们是唯一一个开始开源的主要参与者和。从政治上讲,这可能是不可行的。

  • Verizon 和三星等公司可以自愿将控制权交还给谷歌,而不会被许可协议强迫。这是一种乌托邦式的安排,公司根据自己的自由意志决定做正确的事。直到几周前,这还是三者中最不可能的。但是自从舞台上的混乱之后,几家公司已经承诺或多或少地做到这一点。

因此,我们将在未来几个月和几年内看到它的发展方向。

直到最近,这还是个大问题,但是

现在正在改变。

新的 Android 版本(O 和 P)具有称为Project Treble的功能。

从链接页面:

我们一直从我们的设备制造商合作伙伴那里听到的一件事是,将现有设备更新到新版本的 Android 非常耗时且成本高昂。

对于 Android O,我们一直在与设备制造商和芯片制造商密切合作,以采取措施解决这个问题,我们很高兴向您介绍 Project Treble,这是对低级系统架构的最大改变迄今为止的Android。

一般的想法是将供应商兼容性层与系统的其余部分分开。系统核心的新 Google 更新与所有支持 Treble 的手机兼容,无需供应商进行任何额外工作。

Canonical 和所有其他 Linux 分支的供应商实际上确保安全更新可立即用于笔记本电脑/台式机发行版。

因此,这只能是电话公司懒惰的安全和开发实践,它们没有更新他们的 Android 分支以进行修补。