Chrome 探索使用 Rust 解决内存安全问题

安全
Chrome 安全团队发表文章称,谷歌正在探索使用内存安全语言 Rust 重写或开发 Chrome 的部分模块。

Chrome 安全团队发表文章称,谷歌正在探索使用内存安全语言 Rust 重写或开发 Chrome 的部分模块。

去年谷歌曾指出,Chrome 70% 的安全漏洞是内存安全问题,主要由 C/C++ 中的指针错误导致。针对此问题,谷歌表示 Chrome 探索通过以下三个方向来解决:

  • 在编译时检查指针是否正确,使 C++ 更安全
  • 在运行时检查指针是否正确,使 C++ 更安全
  • 调查代码库中内存安全语言的使用情况

“编译时检查”意味着在 Chrome 构建过程中保证安全,“运行时”意味着在设备上运行 Chrome 时进行检查。理想情况下,通常会选择选项 1 —— 在编译时使 C++ 更安全。不过语言的设计理念并非如此,因此 Chrome 没有选择此方法,而是试验了 2 和 3。

Chrome 安全团队介绍了他们对 C++ 安全解决方案的重大投入 —— 例如 MiraclePtr 和 ABSL/STL 强化模式。他们希望消除相当一部分可利用的安全漏洞,同时也预计会出现部分性能损失的情况。

此外,他们还在探索未来是否可以使用内存安全语言 Rust 重写或开发 Chrome 的部分模块。Rust 是由 Mozilla 开发的编程语言,能在编译时发现指针错误,因此不会造成性能损失。但要让 Rust 和 C++ 一起良好地搭配使用仍存在不少问题。

Chrome 安全团队表示,即使从明天开始使用 Rust 编写新的大型组件,他们也不太可能在几年内消除大部分安全漏洞。能否让语言边界足够干净,以便可以使用 Rust 编写部分现有组件?Chrome 安全团队也无法回答这个问题。不过他们已经开始在 Chromium 源代码树中进行有限的、非面向用户的 Rust 实验,暂时没有在 Chrome 的生产版本中使用 Rust,这些进行中的方案仍处于实验阶段。

本文转自OSCHINA

本文标题:Chrome 探索使用 Rust 解决内存安全问题

本文地址:https://www.oschina.net/news/161500/an-update-on-memory-safety-in-chrome

责任编辑:未丽燕 来源: 开源中国
相关推荐

2011-04-07 10:47:35

2011-08-29 10:34:00

网络安全云安全云计算

2015-08-17 10:19:24

2015-08-19 15:07:03

2011-09-05 13:32:56

2010-07-06 16:34:47

NetBIOS协议

2020-06-29 15:03:34

远程工作网络安全网络攻击

2010-12-30 11:58:13

扩展程序应用安全火狐

2009-11-06 17:07:38

Chrome修复高危安全问题

2021-04-21 13:29:42

内存安全Java

2012-12-12 15:19:32

云安全

2009-11-05 15:46:19

2011-10-21 15:49:05

曙光

2013-08-14 09:11:43

云数据存储云存储云安全

2018-08-29 12:05:54

云数据存储安全

2014-12-30 11:27:26

Blackphone移动设备安全

2011-10-19 07:55:12

2022-08-30 18:46:24

安全软件开发测试软件

2022-09-04 00:03:43

安全漏洞数据验证

2019-04-04 11:55:59

点赞
收藏

51CTO技术栈公众号