谷歌推进Android安全:Rust语言重写关键组件

   发布时间:2023-10-11 10:09

【巨人财经】10月11日消息,去年,谷歌宣布计划将Android原生代码从C++迁移到Rust,而如今,他们在一篇博客文章中介绍了他们在使用Rust语言方面的最新进展。

据了解,谷歌目前正使用Rust语言重写Android关键安全组件,这些组件在Linux内核之外运行,这一举措旨在进一步减少潜在的安全漏洞。

去年的一项调查显示,Android的安全漏洞数量从2019年的223个降至2022年的85个。经过分析,谷歌认为这一改善主要归因于Rust代码的增加。Rust语言在编译时能够捕获大多数内存安全问题,从而有助于避免这些漏洞在生产环境中的出现。

在Android 13中,已经有约21%的新原生代码采用Rust开发。官方表示,这些代码主要是用户层面的系统服务,即在Linux上运行。然而,仍有许多组件继续使用C++编写,尤其是一些关键的安全组件,它们在Linux内核之外的裸机环境中运行。为了增强Android设备的安全性,谷歌计划逐步提高在裸机环境中使用Rust的比例。

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

pVM的作用类似于引导加载程序(Bootloader),它建立在开源项目U-Boot之上。然而,U-Boot在设计时存在一些缺陷,研究人员已经发现了整数下溢和内存破坏等安全漏洞,特别是在VirtIO驱动程序方面存在问题。谷歌表示,他们已经解决了U-Boot中发现的问题,并通过转用Rust语言,有望避免未来出现类似的内存安全漏洞。

为了支持Rust语言在裸机环境中的使用,谷歌还贡献了一系列新项目,包括修复了现有virtio-drivers中的错误问题并添加了新功能。

谷歌计划发布更多的Rust软件包,并支持各种平台上的裸机程序开发。虽然在裸机上使用Rust仍存在一些限制,但与C或C++语言相比,Rust提供更高的安全性和生产效率。谷歌表示,未来将继续扩大Rust的应用范围。

 
标签: 谷歌
 
更多>同类内容
全站最新
热门内容
本栏最新
 
智快科技微信账号
ITBear微信账号

微信扫一扫
加微信拉群
电动汽车群
科技数码群