diff --git a/exploiting/linux-exploiting-basic-esp/README.md b/exploiting/linux-exploiting-basic-esp/README.md index 16643f120..fab1d2625 100644 --- a/exploiting/linux-exploiting-basic-esp/README.md +++ b/exploiting/linux-exploiting-basic-esp/README.md @@ -400,6 +400,12 @@ Contiene las direcciones absolutas de las funciones que son utilizadas en un pro or using GEF you can start a debugging session and execute `got` to see the got table. +You can see the PLT addresses with `objdump -j .plt -d ./vuln_binary` + +In a binary the GOT has the addresses of the functions \(pointing to the PLT\). The goal of this exploit is to override the GOT entry of a function that is going to be executed later with the address of the PLT of the system function. Ideally, you will override the GOT of a function that is going to be called with parameters controlled by you \(so you will be able to control the parameters sent to the system function\). + +If system isn't used by the script, the system function won't have an entry in the PLT. In this scenario, you will need to leak first the address of the system function. + You an find a **template** to exploit the GOT using format-strings here: {% page-ref page="format-string-template.md" %}