|
|
Subscribe / Log in / New account

Kernel support for hardware-based control-flow integrity

Kernel support for hardware-based control-flow integrity

Posted Sep 9, 2022 14:30 UTC (Fri) by jepsis (subscriber, #130218)
In reply to: Kernel support for hardware-based control-flow integrity by alkbyby
Parent article: Kernel support for hardware-based control-flow integrity

"But the cost of those shadow stack thingy is huge."

Not so huge. Many Android phones have these enabled. Chrome OS too. Enabling CFI is strongly recommended on Android devices.


to post comments

Kernel support for hardware-based control-flow integrity

Posted Sep 9, 2022 19:59 UTC (Fri) by nix (subscriber, #2304) [Link]

The point isn't huge in the sense of performance cost: it's huge in the sense of complexity cost. This has needed a whole new mechanism in glibc ld.so to identify cases where shared libraries compiled without CET support are loaded at startup or via dlopen into a process which has CET support active: all you can do in that case is to fail the load (IIRC), reducing reliability unless you do a whole-distro rebuild with CET enabled and never run libraries obtained from any other source. Every single thing involving unusual patterns of control flow needed (often extremely tricky) modification. Some things (like setjmp) involve fixed-size structures baked into user programs: a perennial source of pain, but this made that pain a bit worse. And so on.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds