3 ms·
A counterpoint-counterpoint, see OpenBSD's recent work on compiler/toolchain-based ROP mitigations for clang to replace ROP-friendy instructions with safer alte
by brynet 7y ago
A counterpoint-counterpoint, see OpenBSD's recent work on compiler/toolchain-based ROP mitigations for clang to replace ROP-friendy instructions with safer alternatives, and RETGUARD, which completely replaced the traditional stack protector on amd64/arm64 in 6.5.
Despite what people might think, OpenBSD only enables mitigations that have an acceptable overhead. And because of this work, for example, OpenBSD/arm64 kernel has _zero_ ROP gadgets at runtime, and OpenBSD/amd64 common scripts like ROPGadget.py will often fail to find diverse enough gadgets to even exec a shell.
https://www.openbsd.org/papers/asiabsdcon2019-rop-paper.pdf https://www.openbsd.org/papers/asiabsdcon2019-rop-paper.pdf
https://www.openbsd.org/papers/asiabsdcon2019-rop-slides.pdf https://www.openbsd.org/papers/asiabsdcon2019-rop-slides.pdf
https://www.openbsd.org/innovations.html https://www.openbsd.org/innovations.html