4 ms·
Or perhaps the choice makes a difference, but neither is sufficiently secure. Both likely have dozens if not hundreds of undiscovered array-out-of-bounds error
by elihu 5y ago
Or perhaps the choice makes a difference, but neither is sufficiently secure. Both likely have dozens if not hundreds of undiscovered array-out-of-bounds errors, stack overruns, and race conditions, some of which may have security implications.
I don't think that "re-write everything in Rust" is the final solution in terms of security, but in terms of something like the Linux kernel one can at least see how such a (difficult and unlikely) project might at least address many of the low-hanging fruit so developers can shift their focus to fixing higher-level vulnerabilities.
- tgsovlerkhgsel 5y agoThe risk of kernel exploits isn't the main threat. The complete lack of meaningful sandboxing is a much bigger problem. Most applications need to be able to read: - files that the user drops into them or opens through a file picker (which could be OS-controlled, giving access to only the selected file) - their own storage/config directories - read-only system libraries - temp files (again, isolated per app) Just moving everything into this model would already go a long way. We see kernel exploits on phones because you need them to bypass the sandboxing. We don't see them often on computers, because why would attackers bother?
- elihu 5y agoI can agree with that; writing applications the same way we did on 1980's Unix systems is no longer a sensible way of doing things, and I really wish there was some momentum around fixing that too.