谷歌称使用 Rust 语言后,安卓系统内存安全漏洞数量大幅下降

业界
TIME
2022-12-04 14:40
IT之家
分享

  IT之家 12 月 4 日消息,去年,谷歌将 Rust 作为安卓开源项目(AOSP)中新代码的默认代码,这一举措似乎正在得到回报,谷歌称安卓系统中的内存安全漏洞已经减少了一半以上。

  图源 Pexels

  谷歌表示,“在过去几年 / 版本中,内存安全漏洞的数量大幅下降”。具体而言,2019 年至 2022 年期间,每年的内存安全漏洞数量从 223 个下降到 85 个。内存安全漏洞现在是安卓系统总漏洞的 35%,而四年前是 76%。事实上,“2022 年是内存安全漏洞不占安卓系统漏洞的大多数的第一年”。

  安卓 13 是第一个在其中加入的大部分新代码都是使用内存安全语言的安卓版本,在这个版本中,Rust 语言占了所有新的本地代码的 21%,包括超宽带(UWB)堆栈、DNS-over-HTTP3、Keystore2、安卓的虚拟化框架(AVF),以及“各种其它组件及其开源依赖”。

  IT之家了解到,除了 Rust,谷歌用于安卓的其它内存安全语言包括 Java 和与 Java 兼容的 Kotlin。C 和 C++ 仍然是 AOSP 中的主流语言,但安卓 13 是第一个大部分新代码来自内存安全语言的版本。

  安卓安全软件工程师 Jeffrey Vander Stoep 指出,安卓团队计划加强对 Rust 的使用,尽管没有计划在系统编程中彻底弃用 C 和 C++。他在一条推文中指出:“Rust 并不能解决所有问题,在某些领域,C / C++ 将继续是最实用的开发选择,至少在一段时间内是这样。”他还称,“我们将努力随着时间的推移减少这种情况,同时继续扩大我们的 Rust 使用规模,并继续投资和部署对 C / C++ 的改进。”

  Vander Stoep 指出,相关性并不等同于因果关系,但内存安全漏洞的百分比确实与新代码使用的语言密切相关。

  他继续指出,在安卓 13 中,共有 150 万行 Rust 代码,约占所有新代码的 21%。到目前为止,谷歌还没有在安卓的 Rust 代码中发现任何内存安全漏洞。Vander Stoep 指出,“这表明,Rust 正在实现其预期的目的,即防止出现 Android 最常见的漏洞。在安卓的许多 C / C++ 组件(如媒体、蓝牙、NFC 等)中,历史漏洞密度大于 1 / kLOC(每千行代码有一个漏洞)。根据这一历史漏洞密度,使用 Rust 很可能已经放置了数百个漏洞的产生。”

  谷歌认为摆脱 C / C++ 是一个挑战,但正在为安卓系统推进该项目。然而,其并没有在 Chrome 上使用 Rust 语言。

THE END
免责声明:本文系转载,版权归原作者所有;刊载之目的为传播更多信息,如内容不适请及时通知我们。

相关热点

  从iPhone 12系列开始,苹果已经沿用了三代直屏+直边的设计,标准版和此前mini到还好。  对于Pro版用户,尤其是Pro Max简直是灾难,“半斤”的机身重量加上边框设计,让iPh...
手机
  随着冬季低温季节到来,续航缩短、充电慢等影响新能源电动汽车驾乘体验和消费者满意度的问题更为突出。  并且,近段时间,国内也出现了多起争议车祸事故,车主称车辆质...
新能源

相关推荐

1
3