Rust语言助力Android内存安全漏洞大幅减少

安全设备/系统

156人已加入

描述

从 Android 12 开始,Google 就在 Android 系统中带来了 Rust 语言的支持,作为 C/C++ 的替代方案,他们的目标并不是把现有的 C/C++ 代码都转换成为 Rust,而是在新编写的代码中使用 Rust 语言开发。 通过将越来越多的 Rust 代码集成到其 Android 操作系统中,Google 在减少漏洞方面的努力最终是获得了回报。 Google 在公告中表示,"在过去几年 / 几个 Android 系统版本中,内存安全漏洞的数量大幅下降"。

Rust

具体而言,2019 年至 2022 年期间,每年的内存安全漏洞数量从最初的 223 个下降到如今的 85 个。内存安全漏洞现在在 Android 系统总漏洞的占比也只有 35%,四年前的占比则是 76%,而且 2022 年也是内存安全漏洞首次不再是 Android 系统漏洞最大占比的一年。 在此期间,进入 Android 系统的新内存不安全代码的数量也已经减少。

Rust

Rust 占了 Android 13 所有新的原生代码的 21%,在 AOSP 中已经有大约 150 万行 Rust 代码,涵盖各种功能和元件,其中就包括超宽带(UWB)栈、DNS-over-HTTP3、Keystore2、Android 的虚拟化框架(AVF),以及各种其他组件及其开源依赖。 到目前为止,在整个 Android 12 和 13 系统中,Rust 代码中发现的内存安全漏洞为零,这是一个重要的发现,因为过去 Android 漏洞密度大于 1/kLOC,也就是说,每一千行代码至少会发现一个漏洞,基于 Rust 代码的行数来看,此举可能已经阻挡了成百上千个漏洞进入 Android 系统。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分