В прошлом году Google сделала язык Rust по умолчанию для нового кода в Android Open Source Project (AOSP), и этот шаг, похоже, окупается: Google заявила, что более чем вдвое сократилось количество уязвимостей безопасности памяти в Android.
В частности, в период с 2019 по 2022 год количество уязвимостей безопасности памяти сократилось с 223 до 85 в год. Уязвимости безопасности памяти теперь составляют 35 процентов от общего числа уязвимостей Android, по сравнению с 76 процентами четыре года назад. Фактически, «2022 год — это первый год, когда уязвимости безопасности памяти не составляют большую часть уязвимостей Android».
Android 13 — первая версия Android, в которой большая часть нового кода написана на безопасных для памяти языках. В этой версии на язык Rust приходится 21% всего нового нативного кода, включая сверхширокополосные (UWB) стеки, DNS-over- HTTP3, Keystore2, Android Virtualization Framework (AVF) и «различные другие компоненты и их зависимости с открытым исходным кодом».
Помимо Rust, другие безопасные для памяти языки Google для Android включают Java и Kotlin, совместимый с Java. C и C++ по-прежнему являются доминирующими языками в AOSP, но Android 13 — первая версия, в которой большая часть нового кода исходит из безопасных для памяти языков.