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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Trial en vb6 native code autoextraible
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 Ir Abajo Respuesta Imprimir
Autor Tema: Trial en vb6 native code autoextraible  (Leído 14,074 veces)
MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.513


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #10 en: 2 Diciembre 2010, 19:39 pm »

Ese es el OEP...
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

silvau

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #11 en: 2 Diciembre 2010, 19:42 pm »

Gracias por tu pronta respuesta..


Entonces ahora me toca dumpear y ver lo de la IAT...

Cuando tenga avances posteo.. ;-)
En línea

silvau

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #12 en: 3 Diciembre 2010, 22:57 pm »

Mmmmm.... ya me volví a empantanar...

Resulta... que obtengo el archivo "dumpeado" con Ollydump, y petools

hasta ahi todo parece bien..

Toca entonces checar la IAT...

pero...



las únicas calls que identifico son llamadas a MSVBVM60... estoy bien o me regreso?...

Bueno... suponiendo que es solo esa... pues a buscar el tamaño de la IAT cierto?


Entonces voy a la direccion que dice va a ThunRTMain  40143C.

Ahi encuentro... esto..




Todas las referencias son a MSVBVM60... llendo hacia arriba... !!!Llego a 401000
con ese patrón!!!!

Entonces supongo que empieza en 401000


Pero hacia abajo no veo el limite... la secuencia de ceros no es clara...




Yo supongo que termina en 40154C... porque ahí termina el "patrón"... y suponiendo que no llama a otra dll... pues parece correcto... además... los datos debajo no llevan a direccion válida...
entonces...
usando estos datos... no obtengo con el importrec un exe valido... uso el petool para "reparar" la sección PE y sigo sin obtener nada...


He escuchado que se puede obtener un archivo "casi" desempacado... a qué se refieren?

Gracias por su ayuda.

Adjunto imagen haber si alguien me puede dar alguna pista..




En línea

silvau

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #13 en: 3 Diciembre 2010, 23:07 pm »

El hack que tiene la IAT, es en la funcion de VB que se usa para llamar funciones API de windows, o funciones externas (en DLL's).

La function es DllFunctionCall. En este EXE, esa funcion fue reemplazada por una del packer. En realidad, de esta forma esta funcionando mas lento, pero bueno... al menos intenta proteger el EXE...  :)

Si dumpeas el EXE, no te funcionara por este hack. Lo que hay que hacer, es agregar las secciones que contienen el codigo ejecutable y los datos de esa DLL "virtual" y reparar las referencias del EXE dumpeado.

Con un script lo puedes hacer en 2 patadas...  ;)

Saludos!

Había olvidado estas instrucciones... No entiendo mucho cómo agregar las secciones. creo que reparar la dll virtual es reparando la referencia perdida de la IAT , para que apunte a dll function call (y cómo supiste que era esa???...por experiencia?)... y quizá con esto pueda obtener un exe que pueda correr al menos en olly...espero encontrar la info...

Actualizaré los resultados.
« Última modificación: 3 Diciembre 2010, 23:10 pm por silvau » En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.513


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #14 en: 4 Diciembre 2010, 00:56 am »

Si reemplazas la funcion por la original, se reparan algunas entradas, pero no todas... por eso lo de agregar las secciones y asi no jode esa parte  :P
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

silvau

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #15 en: 4 Diciembre 2010, 01:00 am »

Jaj... pues me parece que ya di más de dos patadas y no más no puedo obtener el exe.... algo me falta... creo es lo de las secciones.....

Adjunto imagen de cómo hago el dump..

y como "arreglo" la iat del dumped.




Por qué elegir DllFunctionCall... no sé... pero es con la que lo estoy haciendo con la idea de arreglar la iat.

Adjunto imagen de importrep...



Sugerencias son bienvenidas.

En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.513


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #16 en: 5 Diciembre 2010, 03:16 am »

Si sigues la función (la de la tabla de saltos de la IAT) cuando estas en el OEP, podras ver que es lo que hace el packer.

Normalmente esa funcion es DLLFunctionCall, pero el EXE la esta usando para otras cosas...  ;)

Saludos!
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

silvau

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #17 en: 7 Diciembre 2010, 01:22 am »

Pues estuve traceando y veo que va a diferentes dlls  ( por lo que supongo que en efecto hace la Tarea de llamarlas...). Veo que pasa por una "Fake.dll" pero no entiendo el código... hace algún tipo de comparación pero no ubico para qué.

Decidí usar DllFunctionCall para reparar la entrada erronea... y agregar  una sección que es la parte a donde salta el programa en esa entrada erronea. En mi caso está en 01540000. Así que use pipe para obtener la sección. Después con peditor la agregue al exe dumpeado con la iat "arreglada". Resulta que no más no corría...

Después me di cuenta que el dumped contiene una sección sin descripción... decidí quitarla ( pensando que podría ser basura del packer, pero sin tener fundamento teórico real que lo sustente). La sección  la quité antes de agregarle la de la entrada redireccionada. luego agregué la sección 01540000 y arreglé el virtual offset. Luego lo pasé por pe rebuilder de lordpe. y obtuve...

Un exe que al fin puedo cargar en Olly... que tiene OEP en donde lo especifiqué y que no me dice que esté comprimido......


Peeeeeeero.... el maldito me sale con  un error...

Es así:



Preguntas:

¿Hice mal en quitar la sección que según yo es huerfana ?( como puedo saberlo..?)

Me falta agregar otras secciones para correr el programa?....

O de plano corregir no más así con dllfunctioncall no va a llevarme a encontrar un exe funcional?



Por cierto.. En importrep hice un  "Trace Level 1" en la entrada erronea... pero me arreglaba la entrada y me marcaba otras 3 entradas malas.....

Usar el Traceador de Imporrep me va a funcionar o es algo más de análisis a mano?



En línea

silvau

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #18 en: 7 Diciembre 2010, 22:47 pm »

Parece que el archivo pierde la información de la versión y por alguna razón la utiliza el programa para arrancar. En las propiedades del archivo original aparece una ficha "version" que no aparece en el dumpeado.....Quizá si logro copiar esos datos del original al nuevo podría echarlo a andar no?...

Hay alguna herramienta q lo haga?

Por otro lado. Podría capturar el momento en que revisa esos datos y "emular" que son los correctos... pero no sé qué función usar para capturar el error....

Sugerencias son bienvenidas.
En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.513


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: Trial en vb6 pe code autoextraible
« Respuesta #19 en: 7 Diciembre 2010, 22:56 pm »

Podrias probar poniendo un BP en CreateFile...
En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

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

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
discreet combustion trial
Diseño Gráfico
rodrihacker 0 1,636 Último mensaje 1 Octubre 2005, 13:02 pm
por rodrihacker
Trial-Reset v3.0
Ingeniería Inversa
ANELKAOS 2 9,614 Último mensaje 13 Octubre 2005, 15:17 pm
por Poyson
virtual dj trial
Ingeniería Inversa
peib0l 6 6,789 Último mensaje 20 Marzo 2012, 06:29 am
por x64core
Problemilla con un trial. « 1 2 3 4 5 »
Ingeniería Inversa
nemus 42 20,680 Último mensaje 7 Octubre 2010, 16:41 pm
por nemus
Ejecutable autoextraible
Programación C/C++
AbyssOfEternalCry 3 2,429 Último mensaje 22 Noviembre 2013, 02:43 am
por xaps
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines