Control-flow integrity in 5.13
Control-flow integrity in 5.13
Posted May 22, 2021 15:11 UTC (Sat) by ale2018 (subscriber, #128727)Parent article: Control-flow integrity in 5.13
I'm not clear how an attacker is supposed to redirect a call to some other address than the function it was meant to reach. The example shows the check carried out in the code near the location of the call itself. It does nothing to prevent, say, returning from an overflowed stack, does it?
CFI is meant to defend against an attacker who is able to fiddle with jump tables in kernel memory, but neither with the bit arrays nor with the code itself (still in kernel memory), right? Or maybe it merely tries to impede the attacker by requiring coordinated changes in the jump table and in the bit array?
And how about compiling with GCC?
