4.2 KiB
Pointer Redirecting
{% hint style="success" %}
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.
String pointers
Se una chiamata di funzione utilizza un indirizzo di una stringa che si trova nello stack, è possibile abusare del buffer overflow per sovrascrivere questo indirizzo e mettere un indirizzo a una stringa diversa all'interno del binario.
Se ad esempio una chiamata alla funzione system
deve utilizzare l'indirizzo di una stringa per eseguire un comando, un attaccante potrebbe posizionare l'indirizzo di una stringa diversa nello stack, export PATH=.:$PATH
e creare nella directory corrente uno script con il nome della prima lettera della nuova stringa poiché questo sarà eseguito dal binario.
Puoi trovare un esempio di questo in:
- https://github.com/florianhofhammer/stack-buffer-overflow-internship/blob/master/ASLR%20Smack%20and%20Laugh%20reference%20-%20Tilo%20Mueller/strptr.c
- https://guyinatuxedo.github.io/04-bof_variable/tw17_justdoit/index.html
- 32bit, cambia l'indirizzo alla stringa delle flag nello stack in modo che venga stampato da
puts
Function pointers
Stesso concetto dei puntatori a stringa ma applicato alle funzioni, se lo stack contiene l'indirizzo di una funzione che verrà chiamata, è possibile cambiarlo (ad es. per chiamare system
).
Puoi trovare un esempio in:
References
{% hint style="success" %}
Impara e pratica il hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica il hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Supporta HackTricks
- Controlla i piani di abbonamento!
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @hacktricks_live.
- Condividi trucchi di hacking inviando PR ai HackTricks e HackTricks Cloud repos su github.