What the GOT and PLT Do in ELF Executables: How Dynamic Linking Works

What the GOT and PLT Do in ELF Executables

If you’ve ever run objdump on a Linux binary and seen puts@plt instead of a real address for puts, you’ve met the two quiet workhorses of every dynamically linked ELF program: the Procedure Linkage Table and the Global Offset Table. They’re the reason your 20 KB binary can still call into a 2 MB libc, the reason ASLR doesn’t break … Read more