| ▲ | khuey 5 hours ago | |||||||||||||||||||||||||||||||||||||||||||
> Just want to remind everyone that only 1% of vulnerabilities are memory related in the average Joe's code. Unless your point is merely that average Joes write such terrible code that you don't even need memory safety issues to exploit their software, [citation needed] Google says memory safety issues are 75% of exploited zero days. (https://security.googleblog.com/2024/10/safer-with-google-ad...) | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | kalaksi 5 hours ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||
And at least in Chromium project, half of those memory safety issues are use-after-free: https://www.chromium.org/Home/chromium-security/memory-safet... | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | wahern 3 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Most memory bugs in Chromium are in V8, either entirely in the JIT or at the boundary with C++. Rust wouldn't help here because the borrow checker can't see through these boundaries, and it's precisely this opacity where the developers also lose track of things. Which isn't to say Rust wouldn't have caught many of the other memory safety issues, but 75% is horribly misleading. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | afdbcreid 5 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
My understanding is that they claim that the average Joe writes code in a garbage-collected memory-safe language. Which is... true? but irrelevant. Such applications are not suggested to be ported to Rust. Of course, some people still do that, because they like Rust; but that's their personal choice. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | bbippin 5 hours ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||
The point is that memory issues are a smallish number of issue compared to the larger ecosystem of vulnerabilities, and choosing to port everything to Rust is like over-optimizing. Well, that’s my 2 cents. For a language as ugly as Rust, my thought is that people should actually be using Ada, and have a mathematically provable correctness angle; not just a replacement for C/C++ with memory safety. | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||