上虞论坛 上虞 每月Android安全补丁更新的工作方式

每月Android安全补丁更新的工作方式

Google自2015年8月开始每月发布安全公告。这些安全公告包含已修复的已披露安全漏洞列表,这些漏洞会影响Android框架,Linux内核和其他封闭源代码供应商组件。公告中的每个漏洞都是由Google发现或向公司披露的。列出的每个漏洞都有一个通用漏洞和披露(CVE)编号,以及相关的参考,漏洞类型,严重性评估和受影响的AOSP版本(如果适用)。但是,尽管Android安全补丁的工作原理看似简单,但实际上背后却有一些复杂的来回操作,使您的手机每月或(希望)获得近一个月的补丁。

什么实际上构成了安全补丁?

您可能已经注意到,实际上每个月都有 两个 安全补丁程序级别。这些补丁的格式为YYYY-MM-01或YYYY-MM-05。尽管YYYY和MM分别代表年份和月份,但“ 01”和“ 05”实际上并不表示该安全补丁程序级别发布的月份。相反,01和05实际上是每月在同一天发布的两个不同的安全补丁程序级别–末尾带有01的补丁程序级别包含对Android框架的修复,但不包括供应商补丁或上游Linux内核补丁。如上所述,供应商补丁指的是对封闭源组件的修复,例如Wi-Fi和蓝牙驱动程序。-05表示的安全补丁程序级别包含这些供应商补丁程序以及Linux内核中的补丁程序。 请看下表,这可能有助于您理解。

当然,某些OEM可能也会选择将自己的补丁程序和更新打包为安全更新。大多数OEM在Android上都有自己的特色,因此仅在您可能拥有华为手机上不存在的三星手机漏洞中才有意义。这些OEM厂商中很多也发布了自己的安全公告。

Google Pixel

了华为

LG

摩托罗拉

D全球

三星

从Google到手机的安全补丁程序时间表

安全补丁程序的时间表大约跨越30天,尽管并非每个OEM都可以利用该时间表的全长。例如,让我们看一下2019年5月的安全补丁,我们可以细分创建此补丁的整个时间表。像Essential这样的公司设法在Google Pixel 的同一天 发布其安全更新 ,那么他们该如何做呢?简短而简单的答案是,他们是Android的合作伙伴。2019年5月的安全公告于5月6日发布,Google Pixels和Essential Phone均即将更新。

成为Android合作伙伴意味着什么

不仅每个公司都可以成为Android合作伙伴,尽管公认每个主要的Android OEM厂商都是如此。Android合作伙伴是获得许可在市场营销资料中使用Android品牌的公司。只要它们满足兼容性定义文档(CDD)中概述的要求并通过兼容性测试套件(CTS),供应商测试套件( VTS),Google Test Suite(GTS)和其他一些测试。有对公司在安全补丁过程中明显的差异是不是一个Android合作伙伴。

在发布安全公告之前1-2天,将它们合并到AOSP之后,即可使用Android框架补丁。

一旦可用,就可以挑选上游Linux内核补丁。

取决于与SoC供应商的协议,是否有SoC供应商提供的针对闭源组件的修复程序。请注意,如果供应商已授予OEM访问封闭源组件的源代码的权限,则OEM可以自行解决问题。如果OEM无法访问源代码,则他们必须等待供应商发布修复程序。

如果您是Android合作伙伴,则立即可以轻松很多。在公告发布之前至少30天,会向Android合作伙伴通知所有Android框架问题和Linux内核问题。Google提供了针对所有问题的补丁,供OEM合并和测试,尽管供应商组件的补丁取决于供应商。例如,至少早在2019年3月20日*就向Android合作伙伴提供了2019年5月安全公告中披露的Android框架问题补丁。那是很多额外的时间。

*注意:在公开发行之前,Google可以(而且经常)一直更新补丁程序以获取最新的安全公告。如果发现了新的漏洞和错误,Google会由于破坏关键组件而决定从每月公告中删除某些补丁,并且Google更新了补丁以解决由该补丁的先前版本创建的错误,则这些更新可能会发生。其他原因。

为什么需要等待很长时间才能在手机上收到安全补丁?

虽然Android合作伙伴(阅读:所有主要的OEM)确实在其发布之前就已经收到了安全补丁,但许多人痛苦地意识到,他们可能在发布后的几个月内都不会收到安全更新。这通常归结为四个原因之一。

OEM可能需要进行重大的技术更改,以适应安全补丁,因为它可能与现有代码冲突。

供应商在为封闭源组件提供更新源代码时很慢。

运营商认证可能需要一些时间。

公司可能不希望在不同时发布功能的情况下发布安全更新。

尽管所有这些都是企业不发布安全补丁的正当理由,但最终用户并不总是在乎这些。诚然,最终用户也不总是在乎安全补丁,尽管它们应该这样做。诸如Project Treble,扩展的Linux LTS和Project Mainline之类的举措正在帮助消除合并这些安全补丁的技术难题,但这不足以使OEM厂商始终如一地努力发布更新。借助通用内核映像或GKI,SoC厂商和OEM厂商可以更轻松地合并上游Linux内核补丁,尽管我们可能要等到明年才能看到第一批具有GKI的设备。

但是,一个有趣的信息(大多数人不知道)是,主要的OEM 必须在设备启动后的一年之内提供“至少四个安全更新”,而总体上要进行两年的更新。Google尚未确认这些特定条款,但该公司确实确认它们“致力于在[OEM]协议中建立安全补丁”。对于Android企业推荐(AER)设备,要求这些设备在发布后的90天内(三年内)获得安全更新。坚固的AER设备需要获得 5年的安全更新。Android One设备应该每月获得3年的安全更新。

安全补丁中包含什么?

安全补丁只是另一个更新,尽管通常会因对单个框架和系统模块的更改而变小得多,而不是对整个系统进行改进或更改。Google每月向设备OEM提供一个zip文件,其中包含当前仍支持的所有主要Android版本的补丁程序以及一个安全测试套件。该测试套件可帮助OEM弥补安全补丁的不足,以确保他们不会错过任何东西,并确保补丁已正确合并。随着月份的继续,Google可能会进行较小的修订,例如确定一个特定的补丁是可选的,尤其是在实施该补丁时遇到麻烦时。

定制ROM呢?

如果您的智能手机没有获得很多安全更新,则不一定意味着您最好切换到自定义ROM。确实会获得本来不会得到的安全更新,但这只是故事的一半。解锁引导加载程序会使您容易受到设备的物理攻击,即使在软件方面,安全性也得到了增强。这并不是说您不应该使用自定义ROM,只是在使用其他ROM时,如果引导加载程序保持锁定状态,这些问题将不适用。如果您更担心软件方面的问题,那么使用获得频繁安全补丁程序的自定义ROM还是更好。

但是还记得我们曾经讨论过YYYY-MM-01和YYYY-MM-05补丁之间的区别吗?-05补丁程序级别包含Linux内核补丁程序以及供应商补丁程序-适用于封闭源代码软件的补丁程序。这意味着定制ROM开发人员将不受他们所开发的OEM的支配,并且无论OEM是否发布更新的Blob。这对于仍由制造商更新的设备来说是很好的,但是对于没有更新的设备,所应用的补丁程序只能应用于Android框架和Linux内核。这就是为什么LineageOS的信任界面显示了两个安全补丁程序级别-一个是平台,另一个是供应商。即使不支持设备的自定义ROM不能完全集成所有最新的修补程序,它们也将比旧的,过时的ROM更安全。

本文来自网络,不代表上虞论坛立场,转载请注明出处:https://www.shangyuluntan.com/16652

作者: sylt

上一篇
下一篇