速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

谷歌: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:085490

评论 1 条评论

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

当农产品拥有“身份证”区块链技术如何助力农产品溯源监管?

CECBC

PNG文件解读(2):PNG格式文件结构与数据结构解读—解码PNG数据

zhoulujun

png jpg

【架构实战营】毕业设计

swordman

架构实战营

毕业设计作业

薛定谔的指南针

架构实战营

毕业感想

薛定谔的指南针

架构实战营

安全世界观 | 常见WEB安全问题及防御策略汇总

架构精进之路

安全 8月日更

【架构实战营】毕业总结

swordman

架构实战营

05-高性能复杂度

Lane

单向数据流-从共享状态管理:flux/redux/vuex漫谈异步数据处理

zhoulujun

React Redux vuex vue2 状态机

从java注解漫谈到typescript装饰器——注解与装饰器

zhoulujun

Java 注解 装饰器 ts 元数据

分享三个可改进的体验

石云升

用户体验 体验设计 8月日更

【前端 · 面试 】HTTP 总结(七)—— HTTP 缓存概述

编程三昧

面试 HTTP 8月日更 HTTP缓存

架构实战营模块四作业

王晓宇

架构实战营

JavaScript 开发人员应该理解的 this

devpoint

JavaScript js变量声明 this 8月日更

JIT-动态编译与AOT-静态编译:java/ java/ JavaScript/Dart乱谈

zhoulujun

Java dart JIT

Kafka 和 Kinesis 之间的对比和选择

HoneyMoose

MongoDB 客户端怎么做负载均衡

海明菌

mongodb 负载均衡 客户端

Tensorflow API(一)

毛显新

人工智能 深度学习 tensorflow keras

Tensorflow随笔(一)

毛显新

人工智能 深度学习 tensorflow keras

深度解析区块链数字票据及其优势

CECBC

网络攻防学习笔记 Day98

穿过生命散发芬芳

态势感知 网络攻防 8月日更

ipfs挖矿怎么选择公司?ipfs挖矿收益怎么计算?

IPFS挖矿收益怎么计算 ipfs挖矿怎么选择公司

06-高可用复杂度

Lane

微信朋友圈的高性能复杂度分析

Saber

架构实战营

架构实战营-毕业设计项目

阿体

模块四作业

秀聪

架构训练营

PNG文件解读(1):PNG/APNG格式的前世今生

zhoulujun

png

初学字典-python

加里都好

设计千万级学生管理系统的考试试卷存储方案-模块四

小牧ah

架构实战营

三维旋转笔记:欧拉角/四元数/旋转矩阵/轴角-记忆点整理

zhoulujun

矩阵旋转 欧拉角 三维旋转 四元数

数字新基建助推能源互联网“一体两翼”区块链中台应用建设思考

CECBC

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