Comparing GCC and Clang security features
Comparing GCC and Clang security features
Posted Sep 16, 2019 15:04 UTC (Mon) by jgh (guest, #92451)Parent article: Comparing GCC and Clang security features
For uninitialized variables, how about hardware support for a poison bit?
Registers and stack locs would be written with a poisoned value at function head, and similar to an FP NaN, this should propagate on copies; it should trap on arithmetic or indirection use. It would be silently overwritten by a valid value.
For best protection the full memory hierachy would support it (the DRAM layer, eg, could use a know-bad ECC). A cpu-chip-only implementation could get partial protection by not writing farther out than the last-level cache.