[论文解读] Hey Google, What Exactly Do Your Security Patches Tell Us? A Large-Scale Empirical Study on Android Patched Vulnerabilities
这项大规模实证研究分析了2015年至2019年间从Android安全公告、CVEDetails和开源仓库获取的2,470个已修补的Android漏洞。研究揭示了针对源自Linux和高通的漏洞存在显著的修补延迟,公共披露时间线不一致,且由于缺乏更新,已终止支持的Android版本面临广泛风险,尽管许多漏洞在旧版、不被支持的操作系统版本中仍可被利用。
In this paper, we perform a comprehensive study of 2,470 patched Android vulnerabilities that we collect from different data sources such as Android security bulletins, CVEDetails, Qualcomm Code Aurora, AOSP Git repository, and Linux Patchwork. In our data analysis, we focus on determining the affected layers, OS versions, severity levels, and common weakness enumerations (CWE) associated with the patched vulnerabilities. Further, we assess the timeline of each vulnerability, including discovery and patch dates. We find that (i) even though the number of patched vulnerabilities changes considerably from month to month, the relative number of patched vulnerabilities for each severity level remains stable over time, (ii) there is a significant delay in patching vulnerabilities that originate from the Linux community or concern Qualcomm components, even though Linux and Qualcomm provide and release their own patches earlier, (iii) different AOSP versions receive security updates for different periods of time, (iv) for 94% of patched Android vulnerabilities, the date of disclosure in public datasets is not before the patch release date, (v) there exist some inconsistencies among public vulnerability data sources, e.g., some CVE IDs are listed in Android Security bulletins with detailed information, but in CVEDetails they are listed as unknown, (vi) many patched vulnerabilities for newer Android versions likely also affect older versions that do not receive security patches due to end-of-life.
研究动机与目标
- 理解已修补Android漏洞在不同操作系统版本、严重性级别和根本原因上的生命周期与分布情况。
- 评估漏洞的公共披露、补丁发布和修复提交日期在时间性和一致性方面的及时性。
- 研究终止支持(EOL)政策对消费者安全的影响,特别是对老旧Android版本的影响。
- 评估源自外部组件(如Linux和高通)的漏洞在修补过程中的延迟情况。
- 识别公共漏洞数据库中的不一致性及其对安全研究和政策制定的影响。
提出的方法
- 从多个来源收集了2,470个已修补漏洞,包括Android安全公告、CVEDetails、高通Code Aurora、AOSP Git和Linux Patchwork。
- 将漏洞映射到通用弱点枚举(CWE),以分析根本原因,重点关注最普遍的弱点类型。
- 应用SZZ算法,通过分析修复提交中的代码删除,估算引入漏洞的首个提交。
- 追踪从漏洞引入(首行代码)到修复提交、补丁发布和公共披露日期之间的时间线。
- 计算最大漏洞生命周期,即从首次引入代码到安全公告发布之间的时间间隔。
- 对不同AOSP版本的安全支持持续时间进行对比分析,并评估跨版本的可利用性。
实验结果
研究问题
- RQ1已修补的Android漏洞在不同操作系统版本和时间段内的严重性级别与根本原因如何分布?
- RQ2来自Linux和高通的补丁在发布后,其与Android安全更新集成之间存在多长的延迟?
- RQ3公共披露日期与补丁发布和修复提交日期在不同漏洞数据库中的一致性如何?
- RQ4终止支持的Android版本在多大程度上仍会受到为新版本发布的补丁的影响?
- RQ5公共漏洞数据库中的不一致性(例如CVE差异)如何影响安全研究的可靠性?
主要发现
- 平均最大漏洞生命周期约为1,350天,表明漏洞在被发现前存在显著的未检测窗口期。
- CWE 119:未能约束内存缓冲区边界的操作是已修补漏洞中最常见的根本原因。
- 在外部补丁发布与Android自身补丁发布之间存在显著延迟,平均为307.8天(高通)和324.9天(Linux)。
- 在94%的漏洞中,公共披露发生在补丁发布日期或之后,表明大多数情况下遵循了负责任的披露实践。
- 不同AOSP版本的安全更新支持时长各不相同,版本4.4在4.4.4版本达到终止支持前22个月即已停止支持。
- 许多在新版Android中修补的漏洞可能同样影响那些不再接收更新的旧版、已终止支持的版本,导致大量用户仍处于暴露风险中。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。