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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章