Redirección de Punteros
Reading time: 2 minutes
tip
Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a HackTricks y HackTricks Cloud repos de github.
Punteros de cadena
Si una llamada a función va a usar una dirección de una cadena que se encuentra en la pila, es posible abusar del desbordamiento de búfer para sobrescribir esta dirección y poner una dirección a una cadena diferente dentro del binario.
Si, por ejemplo, una llamada a la función system
va a usar la dirección de una cadena para ejecutar un comando, un atacante podría colocar la dirección de una cadena diferente en la pila, export PATH=.:$PATH
y crear en el directorio actual un script con el nombre de la primera letra de la nueva cadena ya que esto será ejecutado por el binario.
Puedes encontrar un ejemplo de esto en:
- 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, cambiar la dirección a la cadena de flags en la pila para que sea impresa por
puts
Punteros de función
Lo mismo que el puntero de cadena pero aplicándose a funciones, si la pila contiene la dirección de una función que será llamada, es posible cambiarla (por ejemplo, para llamar a system
).
Puedes encontrar un ejemplo en:
Referencias
tip
Aprende y practica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Apoya a HackTricks
- Revisa los planes de suscripción!
- Únete al 💬 grupo de Discord o al grupo de telegram o síguenos en Twitter 🐦 @hacktricks_live.
- Comparte trucos de hacking enviando PRs a HackTricks y HackTricks Cloud repos de github.