50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

谷歌:Android 内存安全漏洞比例下降与使用 Rust 相关

  • 2022-12-04
    北京
  • 本文字数:828 字

    阅读完需:约 3 分钟

谷歌:Android 内存安全漏洞比例下降与使用Rust相关

根据谷歌安全消息,十多年来,内存安全漏洞一直占整个产品和整个行业漏洞的 65% 以上。但近期在 Android 上,内存安全漏洞显着减少,并且相关的漏洞严重性也有所下降。

 

“从 2019 年到 2022 年,内存安全漏洞的年度数量从 223 个下降到 85 个,”Android 安全工程师 Jeffrey Vander Stoep 在博客文章中说道。Jeffrey 表示,这种下降与放弃内存不安全编程语言的努力相吻合,这里的“内存不安全编程语言”指的是 C/C++。



从去年的 Android 12 开始,Rust 成为了 Android 平台语言。Jeffrey 表示,现在在 Android 13 中,添加到该版本中的大部分新代码都是用内存安全语言——Rust、Java 或 Kotlin 编写的。

 

随着 Android 内存不安全代码越来越少,内存安全漏洞占 Android 漏洞的比例从 2019 年的 76% 下降到 2022 年的 35%。2022 年是内存安全漏洞不再是 Android 大部分漏洞代表的第一年。

 

“虽然有相关性并不一定意味着有因果关系,但值得注意的是,由内存安全问题引起的漏洞的百分比似乎与用于新代码的开发语言密切相关。”Jeffrey 说道。

 

据悉,在 Android 13 中,大约 21% 的新原生代码(C/C++/Rust)是 Rust。AOSP 中大约有 150 万行 Rust 代码,涵盖了各种新功能和组件,例如 Keystore2、新的超宽带 (UWB) 堆栈、DNS-over-HTTP3、Android 的虚拟化框架 (AVF) 以及各种其他组件及其开源依赖项。这些是需要系统语言的低级组件,否则这些组件将在 C++ 中实现。迄今为止,在 Android 的 Rust 代码中发现的内存安全漏洞为零。

 

不过,Jeffrey 也表示,谷歌的目标不是将现有的 C/C++ 转换为 Rust,而是随着时间的推移,将新代码的开发转移到内存安全语言。

 

谷歌并不是唯一一家认识到内存安全代码好处的大型科技公司。Meta 层表达过对 Rust 的赞赏。几个月前,微软 CTO Mark Russinovich 宣布不应再使用 C/C++ 来启动新项目,并表示应该在需要没有垃圾收集的语言的地方部署 Rust。

 

参考链接:

https://security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html

2022-12-04 22:085936

评论 1 条评论

发布
用户头像
微软 CTO Mark Russinovich X
微软Azure CTO Mark Russinovich √
2022-12-05 09:49 · 上海
回复
没有更多了
发现更多内容

Feign的整体流程

急需上岸的小谢

10月月更

利用Babel自动生成“Attribute”文档

小鑫同学

前端 markdown 插件开发 babel 10月月更

2022年8月银行APP月活跃人数盘点

易观分析

手机银行 8月

如何进行项目管理?

老张

项目管理

公司没钱了,工资发不出来,作为员工怎么办?

石云升

离职 职场经验

CAN与CAN FD通信之间存在的问题

不脱发的程序猿

汽车电子 CAN总线 CAN FD总线 CAN与CAN FD通信问题 CAN与CAN FD通信

Centos7 搭建单机Spark分布式集群

Yeats_Liao

后端 虚拟机 10月月更

feign的动态代理

急需上岸的小谢

10月月更

区块链架构的层级:第 0、1、2、3 层介绍

devpoint

区块链 10月月更

创建容器镜像:如何编写正确、高效的Dockerfile

okokabcd

Docker

聊聊 K8S:K8S集群搭建实战

老周聊架构

k8s 10月月更

如何监测MySQL是否命中索引?

乌龟哥哥

10月月更

【愚公系列】2022年10月 Go教学课程 033-结构体方法重写、方法值、方法表达式

愚公搬代码

10月月更

一份经过时间检验的 Laravel PHPUnit 测试经验分享

乌龟哥哥

10月月更

RefectiveFeign

急需上岸的小谢

10月月更

数据中台坠落神坛,数据服务平台闪亮登场,阿里、快手又整烂活?

雨果

数据中台

一文搞懂CAN和CAN FD总线协议

不脱发的程序猿

汽车电子 通信协议 CAN总线 CAN和CAN FD总线协议 CAN FD总线

Windows Update MiniTool 20.12.2016 控制Window更新下载及使用教程

Yeats_Liao

工具 windows 10月月更

数据湖(五):Hudi与Hive集成

Lansonli

10月月更 Hudi与Hive集成

Photoshop软件应用项目(三)

张立梵

设计师 ps 10月月更

【一Go到底】第二十天---闭包

指剑

Go golang 10月月更

树莓派4B安装docker-compose(64位Linux)

程序员欣宸

Docker 10月月更 树莓派4

基础结构:链表 回文链表

芯动大师

Python 10月月更 回文数

深入理解java中的自动装箱与拆箱

乌龟哥哥

10月月更

cstdio的源码学习分析11-格式化输入输出函数fprintf---format解析跳转表逻辑分析

桑榆

c++ 源码刨析 10月月更

Flash软件应用项目(三)

张立梵

设计师 Flash 10月月更

命名规范与原则

Appleex

代码人生 命名规范

什么是IP路由?思科与华为在IP路由配置上有啥区别?

wljslmz

路由器 动态路由 静态路由 10月月更 IP 路由

【内网渗透】一次简单内网靶场渗透

网络安全学海

黑客 网络安全 安全 信息安全 渗透测试

Centos7 搭建Jupyter NoteBook教程

Yeats_Liao

后端 虚拟机 10月月更

谷歌:Android 内存安全漏洞比例下降与使用Rust相关_语言 & 开发_褚杏娟_InfoQ精选文章