Secure by design: Google’s perspective on memory safety

Google’s Project Zero reports that memory safety vulnerabilities—security defects caused by subtle coding errors related to how a program accesses memory—have been “the standard for attacking software for the last few decades and it’s still how attackers are having success”. Their analysis shows two thirds of 0-day exploits detected in the wild used memory corruption vulnerabilities. Despite substantial investments to improve memory-unsafe languages, those vulnerabilities continue to top the most commonly exploited vulnerability classes.

In this post, we share our perspective on memory safety in a comprehensive whitepaper. This paper delves into the data, challenges of tackling memory unsafety, and discusses possible approaches for achieving memory safety and their tradeoffs. We’ll also highlight our commitments towards implementing several of the solutions outlined in the whitepaper, most recently with a $1,000,000 grant to the Rust Foundation, thereby advancing the development of a robust memory-safe ecosystem.

↫ Alex Rebert and Christoph Kern at Google’s blog

Even as someone who isn’t a programmer, it’s impossible to escape the rising tide of memory-safe languages, with Rust leading the charge. If this makes the software we all use objectively better, I’ll take the programmers complaining they have to learn something new.

34 Comments

  1. 2024-03-15 11:26 am
    • 2024-03-15 11:38 am
      • 2024-03-15 12:30 pm
        • 2024-03-15 3:28 pm
      • 2024-03-15 5:38 pm
      • 2024-03-15 5:47 pm
      • 2024-03-16 1:56 am
        • 2024-03-16 9:08 am
          • 2024-03-17 12:23 am
          • 2024-03-17 2:04 pm
          • 2024-03-17 2:38 pm
    • 2024-03-15 11:44 am
      • 2024-03-15 12:27 pm
    • 2024-03-15 5:53 pm
      • 2024-03-15 7:06 pm
        • 2024-03-18 1:34 am
          • 2024-03-18 1:37 am
  2. 2024-03-15 3:19 pm
  3. 2024-03-15 5:54 pm
  4. 2024-03-15 7:06 pm
    • 2024-03-15 7:23 pm
      • 2024-03-15 7:54 pm
        • 2024-03-15 8:05 pm
        • 2024-03-16 2:02 am
    • 2024-03-18 1:23 am
  5. 2024-03-15 7:06 pm
  6. 2024-03-16 5:19 pm
    • 2024-03-17 12:29 am
      • 2024-03-17 3:31 pm
        • 2024-03-17 3:50 pm
          • 2024-03-17 5:35 pm
          • 2024-03-17 9:36 pm
          • 2024-03-20 12:55 am