Google engineers have claimed that the Rust programming language is the key to making the Android operating system more secure.
in a blog post (Opens in a new tab) Posted by Android security engineer Jeffrey Vander Stoep, the Google employee says the number of severe memory vulnerabilities has dropped dramatically in the past three years and suggests that it’s all thanks to the operating system moving away from the memory-insecure programming languages C and C++.
Three years ago, the majority (65%) of Android errors were either very severe or very severe memory integrity errors (ie, think of out-of-bounds defects in reading and writing). Since then, Google has been writing new Rust code and adding it to Android (instead of just improving the existing code). Now, the number of these defects has been greatly reduced, and it is no longer the biggest problem of the mobile operating system.
Consistently less severe vulnerabilities
“From 2019 to 2022, the annual number of memory safety vulnerabilities decreased from 223 to 85,” explains Vander Stueb.
With Android 12 (released in early October 2021), he said, the operating system has become Rust’s first product. And while memory security bugs have declined thanks to the use of the new programming language, other forms of vulnerabilities have remained constant at approximately 20 new flaws discovered each month. However, these flaws are not as serious as memory integrity errors.
But this does not mean that Google completely abandons C and C++. The company will continue to invest in tools for writing more secure C and C++ code, Vander Stueb said, pointing to the powerful Scudo customizer, HWASAN, GWP-ASAN, and KFENCE on Android. (Opens in a new tab) hardware. He also said that Google has increased its use of obfuscation.
So far, Rust has been fairly reliable, but Vander Stoep knows this may change in the future: so far, no memory vulnerabilities have been discovered in Rust’s Android code,” “We don’t expect this number to remain zero to forever, but given the amount of new Rust code across the two Android versions, and the security-sensitive components where it’s used, this is an important finding.”
Via: The Register (Opens in a new tab)