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

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Armadillo 6.60.0140 hueso duro de roer=?
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Armadillo 6.60.0140 hueso duro de roer=?  (Leído 6,607 veces)
biribau

Desconectado Desconectado

Mensajes: 181


Ver Perfil
Armadillo 6.60.0140 hueso duro de roer=?
« en: 15 Junio 2009, 02:50 am »

Buenas,

He usado el Software Passport(ultima version) para comprimir un ejecutable muy simple para estudiar la proteccion Armadillo 6.60 y nada, aun siguiendo varios tutos por la red no puedo con el...

Lo unico que no lleva son nanomites

Esta aqui: http://rapidshare.com/files/244632303/UnpackmeArmadillo6.exe.bz2.html

 Me gustaria poder dumpearlo y extraer el nucleo del programa para poder parchearlo etc., pero a mano. No he tenido muchos avances, a ver si alguien puede darme alguna pista.
He probado bastantes cosas y no consigo aun asi entender bien como funciona.

El intento mas cercano de conseguir algo fue de esta manera:

(Uso el plugin phantom para ocultar el olly)

Rompemos en el segundo WriteProcessMemory(hardware bp), que escribe 2 bytes en el proceso hijo, anteriormente escribio un salto jmp eip y ahora reestablece los bytes, nosotros cambiamos el buffer por EB FE, o sea, jmp eip.

Ahora deseariamos attachear olly al proceso hijo pero este esta siendo depurado por el padre asi que ponemos en el padre un bp WaitForDebugEvent, al final cuando eax == 0 (conditional) (esto no se bien por que pero lo lei) retornamos y ensamblamos
push <pid proceso hijo>
call DebugActiveProcessStop

Ejecutamos las 2 instrucciones y ya podemos atachaear un segundo olly al proceso hijo, ahora si ejecutamos el programa normal casca..... ¿que hago mal? ¿que detecta el programa diferente?

Como veis estoy muy lejos de poder dumpear el programa, reconstruir la IAT, etc...

Cualquier ayuda sera bienvenida :D
Saludos
En línea

Shaddy


Desconectado Desconectado

Mensajes: 722


one_bit_manipulator()


Ver Perfil WWW
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #1 en: 15 Junio 2009, 12:17 pm »

Los nanomites son instrucciones 0xCC (int 3) puestos sobre todo el código para que el "proceso hijo" provoque una excepción, que luego el padre gestionará introduciendo el byte correcto, así que tienes que hacer un pequeño injerto en el "código" de respuesta del WaitForDebugEvent simulando que estás enviando información sobre todas las secciones a arreglar, y luego parcheas todos los nanomites.

Un saludo.

Shaddy.
En línea

"Si buscas resultados diferentes, no hagas siempre lo mismo" (Albert Einstein)

http://abssha.reversingcode.com
http://www.reversingcode.com
biribau

Desconectado Desconectado

Mensajes: 181


Ver Perfil
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #2 en: 15 Junio 2009, 20:56 pm »

Gracias Shaddy, esa info es muy interesante...

He avanzado un poco más, he hecho un loader en C suplantador del proceso padre, sin embargo me di cuenta de una cosa: como bien dice Shaddy(aunque en otro sentido) hay partes del programa que no estan aun "listas", no se como explicarlo, quiero decir que hay partes de codigo que el proceso padre inyecta en el hijo. Esto lo hace a traves(por suerte) de una llamada a WriteProcessMemory. Y lo hace ante una la aparición de una excepción concreta (0x80000001) o eso creo... deberia copiar estas 2 paginas de codigo del proceso padre y hacer que las inyecte mi suplantador no obstante tope con otra cosa.
La primera pagina que escribe es a la que saltara el proceso al ejecutarse, la escribe en 401000(una direccion susculenta eh?), sustituyendo los 2 primeros bytes por un buble infinito y atacheando olly al proceso hijo como describi antes aparecemos directamente sobre el codigo del programa.

Pero hay peros, las llamadas a las API's han sido sustituidas por jmp's ¿? a stubs posiblemente, de momento no he analizado mas, pero estoy mas cerca de dumpearlo...

Una cosa más, tengo que repetir todo el rato el mismo proceso para llegar a ciertos estados de un programa, hay alguna manera de automatizar esto??... con un plugin de olly o algo, que me recomendáis que use?, el immunity no me vale porque no le funcionan los plugins del olly... al menos no el phantom.

edit: Corrijo, he encontrado el phantom para el immunity, creo que me voy a pasar a este debugger

Saludos.
« Última modificación: 16 Junio 2009, 14:51 pm por biribau » En línea

Shaddy


Desconectado Desconectado

Mensajes: 722


one_bit_manipulator()


Ver Perfil WWW
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #3 en: 15 Junio 2009, 21:34 pm »

Antes se hacía un injerto, y si.. hay herramientas para hacer todo ésto.. en la página de ARTeam tienes el ArmInline.. o el Armaggedon, y algunos que te lo hacen todo sin hacer nada.

Para hacerlo a mano deberías simular los "eventos" del hijo hacia el padre como que hay "secciones" de código que se quieren ejecutar para que lo parchee correctamente y lo deje bien.

Un saludo.

Shaddy.
En línea

"Si buscas resultados diferentes, no hagas siempre lo mismo" (Albert Einstein)

http://abssha.reversingcode.com
http://www.reversingcode.com
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #4 en: 16 Junio 2009, 03:34 am »

lo estoy descargando para verlo, xq te falta aclarar muchas cosas, por ejemplo si decis q lo unico q no lleva es nanomites tenemos q dar por sentado q tiene debugblocker, copymemII, codesplicing y key. esta bueno para practicar armadillo, en unos días te digo como me fue. espero lo resuelvas.
En línea

Amerikano|Cls


Desconectado Desconectado

Mensajes: 789


[Beyond This Life]


Ver Perfil WWW
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #5 en: 16 Junio 2009, 04:47 am »

lo estoy descargando para verlo, xq te falta aclarar muchas cosas, por ejemplo si decis q lo unico q no lleva es nanomites tenemos q dar por sentado q tiene debugblocker, copymemII, codesplicing y key. esta bueno para practicar armadillo, en unos días te digo como me fue. espero lo resuelvas.

he tinco!!! bueno verte por aca  :)
En línea





Mi blog:
http://amerikanocls.blogspot.com
Shaddy


Desconectado Desconectado

Mensajes: 722


one_bit_manipulator()


Ver Perfil WWW
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #6 en: 16 Junio 2009, 09:01 am »

ya te digo! Bienvenido tincopasan :). Ponte cómodo :P.

Un saludo.

Shaddy.
En línea

"Si buscas resultados diferentes, no hagas siempre lo mismo" (Albert Einstein)

http://abssha.reversingcode.com
http://www.reversingcode.com
tena


Desconectado Desconectado

Mensajes: 668



Ver Perfil
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #7 en: 17 Junio 2009, 00:19 am »

eeeeeeeeeee Tinco!!!
tanto tiempo

slds
En línea

tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #8 en: 17 Junio 2009, 05:59 am »

gracias! la verdad q me alagan, sabran q no tengo internet asi q cada tanto me hago una escapada al ciber para ver q hay. Mis saludos a todos.
En línea

solidcls

Desconectado Desconectado

Mensajes: 72


Ver Perfil
Re: Armadillo 6.60.0140 hueso duro de roer=?
« Respuesta #9 en: 19 Junio 2009, 00:25 am »

Por lo que desctribis me juego las bolas que tiene copymem II y si bien nunca tuve en mis manos la version que mencionas en las anteriore la sección code del hijo la va descifrando de a 0x1000 bytes a medida que la neceaita y luego la vuelve a cifrar de manera que si no corregis eso nunca vas a tener al hijo totalmente descifrado do modo que hastaque no soluciones eso de nada te sirve desattachearlo
Solid
Pd: tinco rata todavia no tenes internet ??? Dejate de jodeeeeer

En línea

Solid [CrAcKsLaTiNoS]
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Las 'influencers' virtuales empiezan a hacerle sombra a las de carne y hueso
Noticias
wolfbcn 2 1,213 Último mensaje 17 Enero 2019, 12:18 pm
por Machacador
Hueso duro de roer Password de arranque de Toshiba z30-c
Hacking
FJDA 0 3,140 Último mensaje 9 Octubre 2022, 22:18 pm
por FJDA
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines