Buffer overflows en windows xp

Solo disponible en BuenasTareas
  • Páginas : 3 (581 palabras )
  • Descarga(s) : 0
  • Publicado : 20 de junio de 2011
Leer documento completo
Vista previa del texto
Introducción a los Buffer Overflows y ShellCodes en Windows
Un pequeño vistazo a como explotar buffer overflows y divertirnos (o morir) en el intento…

Antes de empezar…
• Herramientas:
–Ollydebug – TASM5 (Turbo Assembler 5) – Devcpp o VC++ – FindJmp – Editor (el que tu quieras)

¿Qué es un Buffer Overflow?
• Bug de programación.
– Ocasionado por copiar datos a un area de memoria queno es lo suficientemente grande para contenerlos.
char buffer[64]; // Buffer strcpy(buffer, argv[1]);
de 64 bytes //Aqui es donde esta el fallo.

¿Ajá y qué ? Explícamelo con palitos y bolitas
•El Procesador tiene varios registros (eax, ecx, edx, esi, edi, eip, esp, ebp) • Introducir datos mayores al buffer causa que sobre escribas memoria continua • Al sobre escribir memoria continua,causas un error de segmento • EIP Open -> Busquen el archivo vulnerable que acabamos de compilar • Debug -> Arguments • Introducimos AAAAAAAAAAAAAA (todas las que podamos) • Debug -> Restart • ApretamosF9

¿Qué pasó? Memory Exception EIP = 0x414141

Buffer Overflow!

¿Qué podemos hacer con un stack overflow?
• Nada. • Manipular el flujo del programa
– Ejecutar el código que se nos de lagana. – Obtener una shell y acceder al sistema. – Elevación de privilegios. – Crear gusanos que se reproduzcan masivamente. – Lo que se le ocurra a nuestra imaginación.

ShellCodes

¿Qué es unashellcode?
• Programa normalmente hecho en asm de características muy pequeñas. • Al ser pequeño es inyectado a la pila y ejecutado.

Tipos de Shellcodes.
• Locales. (Escalación de privilegios) •Externas.
– Reverse ShellCode – Bind ShellCode

Programaremos una Shellcode Local
• • • • Abran su editor favorito (notepad++ p.e). Preparen su TASM (instalenlo si no lo está) Creen un archivollamado compilar.bat en C: Abran compilar.bat

c:\TASM\bin\tasm32 -ml -m5 -q -zn shellcode.asm c:\TASM\bin\tlink32 -v -Tpe -c -x -aa shellcode,,, import32

Práctica Presentación de código de la...
tracking img