elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
14 Febrero 2012, 02:11  


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits (Moderador: berz3k)
| | |-+  Sobreescribir EIP
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Sobreescribir EIP  (Leído 2,470 veces)
Fire544

Desconectado Desconectado

Mensajes: 14


"Escucha el sonido del 0, 1"


Ver Perfil WWW
Sobreescribir EIP
« en: 14 Agosto 2009, 23:05 »

Hola, tengo ya varias horas con una dúda e visto varios manuales, y algunos comentarios, donde dice "las direcciones EIP, nunca se sobreescriben".

Intento lo siguiente ya todo compilado sin las protecciones stack y randomize.

Código:
gdb hola
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
(gdb) r main
Starting program: /home/f1r3/hola main

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a9c100 in __libc_start_main () from /lib/libc.so.6
(gdb) info registers rbp rip
rbp            0x4141414141414141       0x4141414141414141
rip            0x7ffff7a9c100   0x7ffff7a9c100 <__libc_start_main+48>
(gdb) x/x $rbp
0x4141414141414141:     Cannot access memory at address 0x4141414141414141
(gdb) x/x $rip
0x7ffff7a9c100 <__libc_start_main+48>:  0x7c8948d2

La respuesta que quiero, es ¿ Por qué razón pasa esto ?
« Última modificación: 14 Agosto 2009, 23:08 por Fire544 » En línea

"Sólo los pobres de conosimientos ven quien eres, sólo los ricos saven porque"
Fire544

Desconectado Desconectado

Mensajes: 14


"Escucha el sonido del 0, 1"


Ver Perfil WWW
Re: Sobreescribir EIP
« Respuesta #1 en: 18 Agosto 2009, 04:40 »

Noce si es por la versión de gcc, estoy usando actualmente la versión 4.x.x intentaré cambiar de versión a ver que pasa.
En línea

"Sólo los pobres de conosimientos ven quien eres, sólo los ricos saven porque"
berz3k
Moderador
***
Desconectado Desconectado

Mensajes: 1.127



Ver Perfil
Re: Sobreescribir EIP
« Respuesta #2 en: 20 Agosto 2009, 12:12 »

Verifica que el binario sea explotable, tambien existen protecciones ante un BoF en varias boxes linux vaya, gralmente ya en el glibc.

-berz3k.
En línea
Fire544

Desconectado Desconectado

Mensajes: 14


"Escucha el sonido del 0, 1"


Ver Perfil WWW
Re: Sobreescribir EIP
« Respuesta #3 en: 20 Agosto 2009, 21:12 »

berz3k: Gracias, logre sobreescribir las direcciones de los registros EBP e EIP. El problema eran los bytez, la solución fue aumentar los bytez, el problema se devió a que en algunas versiones de gcc, habian que meter más bytez osea si eran 8 habia que poner 16.
En línea

"Sólo los pobres de conosimientos ven quien eres, sólo los ricos saven porque"
berz3k
Moderador
***
Desconectado Desconectado

Mensajes: 1.127



Ver Perfil
Re: Sobreescribir EIP
« Respuesta #4 en: 25 Agosto 2009, 12:52 »

perfect! , ya nos postearas tus notes y resultados.

-berz3k.

En línea
berz3k
Moderador
***
Desconectado Desconectado

Mensajes: 1.127



Ver Perfil
Re: Sobreescribir EIP
« Respuesta #5 en: 25 Agosto 2009, 13:00 »

Olvidaba postearte un buen hilo que te podra ayudar a entender mas sobre posibles protecciones, un pequeño hilo creado por c1c4tr1z :

Deshabilitando protecciones contra Buffer Overflows

:https://foro.elhacker.net/bugs_y_exploits/deshabilitando_protecciones_contra_buffer_overflows-t241570.0.html;msg1158405#msg1158405

-berz3k.
En línea
Fire544

Desconectado Desconectado

Mensajes: 14


"Escucha el sonido del 0, 1"


Ver Perfil WWW
Re: Sobreescribir EIP
« Respuesta #6 en: 26 Agosto 2009, 08:02 »

Hola, berz3k, tardé algunos instantes en contestar disculpa, estaba atareado. Muchas gracias por tu ayuda, ya me e pasado por ese post, de "c1c4tr1z". Y esta bien explicado, lo entendí perfectamente, sobre como desactivar las protecciones de variaciones de la pila, y permitir el fallo de segmentación en la pila (STACK). Muchas gracias.

Aquí los resultados:

Código:
(gdb) run AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Starting program: /home/f1r3/bug AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Has escrito:   AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Program received signal SIGSEGV, Segmentation fault.
0x0000414141414141 in ?? ()
(gdb) info registers rbp rip
rbp            0x4141414141414141       0x4141414141414141
rip            0x414141414141   0x414141414141
(gdb)

Sí te fijas aquí hay 30 ases, pero sobreescribe con 22, hay 30. Por la variante de gcc, lo hace por razones de alineamientos, telele, telele, bla, bla, bla, ya sabes. Bueno ese era el error, que en vez de la explotación ficticia utilizada por todos, de sobreescribir con 2 o 4 bytez más, aquí no anda, tube que meter 8 bytez.
« Última modificación: 26 Agosto 2009, 08:17 por Fire544 » En línea

"Sólo los pobres de conosimientos ven quien eres, sólo los ricos saven porque"
berz3k
Moderador
***
Desconectado Desconectado

Mensajes: 1.127



Ver Perfil
Re: Sobreescribir EIP
« Respuesta #7 en: 28 Agosto 2009, 15:39 »

No esta demas leer las cosas nuevas sobre ASLR

:http://www.blackhat.com/presentations/bh-europe-09/Fritsch/Blackhat-Europe-2009-Fritsch-Bypassing-aslr-whitepaper.pdf

-berz3k.

En línea
Fire544

Desconectado Desconectado

Mensajes: 14


"Escucha el sonido del 0, 1"


Ver Perfil WWW
Re: Sobreescribir EIP
« Respuesta #8 en: 28 Agosto 2009, 22:34 »

Muy bueno el pdf, mucgas gracias entiendo perfectamente.
En línea

"Sólo los pobres de conosimientos ven quien eres, sólo los ricos saven porque"
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sobreescribir el archivo iexplore.exe
Hacking Avanzado
iubens 5 2,498 Último mensaje 14 Marzo 2011, 15:50
por MrDJcKMC
¡¡¡ No puedo sobreescribir el RET !!! « 1 2 »
Bugs y Exploits
Garfield07 18 2,985 Último mensaje 19 Enero 2011, 18:39
por Garfield07
[?]Sobreescribir la URL entera?
Desarrollo Web
VCore 2 268 Último mensaje 13 Junio 2011, 05:41
por VCore
Sobreescribir línea ya escrita lenguaje C
Programación C/C++
Sagrini 8 545 Último mensaje 30 Diciembre 2011, 14:01
por El_Java
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines