Search K
Appearance
Appearance
Other ways to support HackTricks:
This category includes all vulnerabilities that occur because it is possible to overwrite certain data through errors in the handling of indexes in arrays. It's a very wide category with no specific methodology as the exploitation mechanism relays completely on the conditions of the vulnerability.
However he you can find some nice examples:
free
function in the GOT table and then overwrite it with the address to system
, and call free from a memory with /bin/sh
.exit
address is overwritten with pop rdi; ret
, and in the stack is added the address to main
(looping back to main
). The a ROP chain to leak the address of put in the GOT using puts is used (exit
will be called so it will call pop rdi; ret
therefore executing this chain in the stack). Finally a new ROP chain executing ret2lib is used.system('/bin/sh')
(the heap address is needed to bypass a check).