Return-to-libc attack

From Free net encyclopedia

A return-to-libc attack is a computer security attack usually starting with a buffer overflow, in which the return address on the stack is replaced by the address of another function in the program. This allows attackers to call pre-existing functions without the need to inject malicious code into a program.

Protection from return-to-libc attacks

A non-executable stack can prevent some buffer overflows, but not a return-to-libc attack: only existing, executable code is used. On the other hand, these attacks can only call pre-existing functions. Stack-smashing protection can prevent or obstruct exploitation, as it can detect the corruption of the stack. Address space layout randomization makes this type of attack extremely difficult, as the locations of all functions in memory are random.

See also

External links