elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Temas
Páginas: [1]
1  Seguridad Informática / Bugs y Exploits / Mi EIP no se machaca con AAAA's en: 29 Noviembre 2014, 12:41 pm
Buenas a todos,

tengo un script muy simple para practicar y pronto me surgen dudas  :huh::

Código
  1. #include <string.h>
  2. #include <stdio.h>
  3. void func(char *arg)
  4. {
  5. char nombre[32];
  6. strcpy(nombre, arg);
  7. printf("\nHas introducido: %s\n\n", nombre);
  8. }
  9. int main(int argc, char *argv[])
  10. {
  11. func(argv[1]);
  12. printf("Fin del programa\n\n");
  13. return 0;
  14. }

y ejecutándolo con GDB para ver cuándo sobreescribo el EIP:

(gdb) run AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNNOOOOPPPPQQQQRRRRSSSSTTTTUUUUVVVVWWWWXXXXYYYYZZZZ

Starting program: /home/basuri/prueba AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNNOOOOPPPPQQQQRRRRSSSSTTTTUUUUVVVVWWWWXXXXYYYYZZZZ

Bienvenido a Linux Exploiting AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNNOOOOPPPPQQQQRRRRSSSSTTTTUUUUVVVVWWWWXXXXYYYYZZZZ

Program received signal SIGSEGV, Segmentation fault.
0x0000000000400643 in func ()
(gdb)



Según la práctica, debería obtener una respuesta del tipo:

0x4c4c4c4c in func ()


Y no entiendo por qué me devuelve ese valor de memoria o por qué es tan largo.

Estoy practicando en un Ubuntu 14.04 64 bit sobre un Mac OS X 64 bit.

Estaría muy agradecido si alguien me echa una mano.

Saludos a todos.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines