谷歌宣布正使用 Rust 语言重写 Android 关键组件,进一步增强内存安全性

[焦点] 时间:2024-03-29 00:55:12 来源:蓝影头条 作者:知识 点击:116次
10 月 10 日消息,谷歌关键谷歌在去年声称正在将 Android 原生代码从 C++ 迁移到 Rust,宣布写A性目前谷歌在博客中发布文章,正使组件增强展示了当前使用 Rust 语言的用Rt语言重新进展。

据悉,进步谷歌正在使用 Rust 语言,内存重写在 Linux 核心之外执行的安全 Android 关键安全组件,从而进一步减少安全漏洞。谷歌关键

▲ 图源 谷歌安全博客

谷歌声称,宣布写A性去年调查显示,正使组件增强Android 的用Rt语言重安全漏洞,从 2019 年的进步 223 个降低到 2022 年的 85 个,经过分析,内存谷歌认为内存漏洞减少的安全情况,主要与 Rust 代码的谷歌关键比例增加有关。

注:Rust 语言考虑了内存安全性,在编译的时候,Rust 就能够捕捉到大多数的内存安全问题,避免相关漏洞在生产环境中出现。

在 Android 13 中,就已经有约 21%的新原生代码以 Rust 开发,官方提到,这些组件大多数是在用户层面的系统服务(即 Linux 中运行),但目前还有许多组件依然使用 C++ 进行编写,而其中许多安全关键组件,都在 Linux 核心之外的裸机环境中运行,当下谷歌为了强化 Android 设备的安全性,正逐渐提高在裸机环境使用 Rust 的比例。

谷歌声称,相关开发人员在 Rust 中重写了 Android 虚拟化框架的受保护虚拟机 (pVM) 固件,从而为 pVM 信任根提供了安全基础。

▲ 图源 谷歌安全博客

据悉,pVM 的作用与 Bootloader 类似,其建立在开源项目 U-Boot 之上,不过 U-Boot 在设计时有所缺憾,有许多研究人员已经发现 U-Boot 存在整数下溢(Integer Underflow)和内存损坏等安全漏洞,特别是 VirtIO 驱动程序,在“边界检查”方面,其存在许多问题。

谷歌表示,他们已经修复了在 U-Boot 中发现的问题,而通过转用 Rust,还可以在未来避免出现更多类似的内存安全漏洞。

▲ 图源 谷歌安全博客

由于谷歌要支持 Rust 语言在裸机环境中使用,也因此贡献一系列新的项目,像是在 pVM 固件的 VirtIO 驱动程序方面,谷歌便修复了现有 virtio-drivers 中的一系列错误问题,还添加了新功能。

谷歌还计划发布更多的 Rust 软件包,并支持各平台的裸机程序开发,谷歌提到,虽然在裸机上应用 Rust 还有许多限制,但是相对于 C 或 C++ 语言,Rust 可以提供更高的安全性和生产力,谷歌未来还会继续扩大 Rust 的使用。

参考

广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,所有文章均包含本声明。

(责任编辑:综合)

    相关内容
    精彩推荐
    热门点击
    友情链接