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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: karmany, .:UND3R:., MCKSys Argentina)
| | |-+  Ayuda en delphi
0 Usuarios y 2 Visitantes están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda en delphi  (Leído 10,224 veces)
w0nt0n

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Ayuda en delphi
« Respuesta #10 en: 6 Marzo 2012, 23:09 pm »

Cuando lo desempacas el PEid sí que lo detecta como delphi (aunque puede ser que sea el pseudosigner).

Si descomprimes con el upx el exe que obtienes también está empacado pero si te fijas, el nombre de las secciones cambia y aparecen más. De hecho, puedes cargar el programa desempacado en el olly, cambiando los permisos de la sección .rdata (que es donde está la IAT). El problema es que en la rutina de desempacado del segundo packer todo se va al garete.

Saludos!
En línea

No quisiera parecer marica, pero los unicornios son una *****.
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Ayuda en delphi
« Respuesta #11 en: 6 Marzo 2012, 23:20 pm »

Me has pasado el exe correcto?, hablemos por MP

Zorry el themida me tiene paranoico je!.

EDITO:

Igual estamos hablando por MP termino algo que estoy haciendo y lo miro de lleno esto.

Saludos,

Nox.
« Última modificación: 6 Marzo 2012, 23:40 pm por Иōҳ » En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
w0nt0n

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Ayuda en delphi
« Respuesta #12 en: 11 Marzo 2012, 02:10 am »

Sigo a ello.

Lo que he intentado ahora es modificar la IAT para que el exe desempacado que obtengo del upx me funcione. Para eso lo que he hecho es:

1. upx -d xxx_porno.exe <- Descomprimo el exe con el upx.

2. Este exe no funciona. Revisando con el LordPE veo que tiene una tabla de imports pero que no está referenciada en el encabezado, así que cambio el encabezado del programa y, después de cambiar los permisos de la sección, carga en el olly. Se trata de otro packer pero el programa no funciona bien: da un error y se detiene.

3. Traceando el original y comparándolo con el desempacado veo que el problema está en las direcciones de la IAT a las que accede ya que necesita apis que están cargadas en la IAT original y no en la del desempacado. Llegados a este punto la única solución que se me ocurrió fue dumpear la sección entera del original en la que estaba la IAT y modificarla para añadirle los nombres de las apis que necesita. Esto fue un trabajo un poco latoso ya que tenía que crear una nueva IAT y no sé si hay programas que te hagan eso, pero yo no los encontré (si sabéis, decidme) y tuve que hacerlo a mano.

4. Una vez modificada la sección del original para que encaje en el desempacado, la integro en éste con el LordPE y corrijo el RawOffset y el VirtualOffset de la sección nueva, modifico la dirección de los imports y el programa carga.

5. Con el programa cargado en el olly busco los calls a la IAT del desempacado (ya que ahora la IAT es la modificada que he añadido) y las redirijo a la nueva. Guardo los cambios en el exe y, por fin, el progama corre.

6. Una vez se desempaca, vuelve a estar empacado (de nuevo con upx) pero esta vez sigo hasta el OEP usando el método del pushad/popad. Dumpeo, arreglo la IAT y listo.

Todo esto lo hice con la esperanza de que el desempacado con el olly que había hecho al principio del post, no pudiera ser leído correctamente por el DeDe o el IDR debido a que las secciones no estaban estructuradas correctamente. Resulta que me equivocaba: esta nueva versión, aunque tiene todas las secciones correctas, tampoco puede ser leída con estos debuggers.

Lo que me queda ahora es intentar crackearlo de nuevo pero me daba ya muchos problemas la otra versión así que supongo que esta no será diferente. He estado leyendo tutoriales de crackmes hechos en delphi pero no he encontrado ningún método que me sirva. El programa está hecho usando KOL/MCK. Si sabéis de algún tute o algo en el que se estudie los programas compilados así, os agradecería que me lo dijérais porque yo no he encontrado nada. De todas maneras, sigo a ello.

Saludos!
En línea

No quisiera parecer marica, pero los unicornios son una *****.
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Ayuda en delphi
« Respuesta #13 en: 11 Marzo 2012, 05:40 am »

Me está impreionando como estás llevando esto, yo por mi parte no he tenido tiempo aún para mirarlo, pero veo que tienen sólidos conocimientos del formato PE (es lo que ami me falta u.u), igual cuando termine lo que estoy haciendo, mi ayuda sigue en pie.

Puedes usar el ImportRec, ChimpRec, y otro más que no recuerdo je!, son para arreglar la iat, y puedes agregar entradas una por una con un par de clicks...

Saludos,
Nox.

En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
w0nt0n

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Ayuda en delphi
« Respuesta #14 en: 11 Marzo 2012, 12:14 pm »

Gracias de nuevo Nox pero el problema que tengo con tanto el Import Reconstructor como con el ChimpRec es que sólo arreglan dumpeados a partir de originales en memoria y yo lo que necesitaba era crear una IAT desde cero, ya que el programa desempacado con el upx no me lo reconocen como un dumpeado. Intenté añadir las apis con el PE Editor (del LordPE, de las PE Tools, el que se llama así y el IID King) pero no conseguí hacer que funcionara: todo lo que hacen es agregar una sección que hace referencia a la tabla original con lo que al cargarlo sólo carga las apis que no fueron añadidas. Supongo que el problema de esto es que no sé muy bien cómo usar estos programas, así que casi me busqué yo el hacerlo a mano   :D.

En cuanto a conocimientos del PE te dejo un par de artículos de microsoft explican, un poco genéricamente, el formato PE (están en inglés):

http://msdn.microsoft.com/en-us/magazine/cc301805.aspx <- An In-Depth Look into the Win32 Portable Executable File Format Parte 1
http://msdn.microsoft.com/en-us/magazine/cc301808.aspx <- An In-Depth Look into the Win32 Portable Executable File Format Parte 2

En cuanto a tutes en delphi, os agradecería los que he encontrado son:
http://ricardonarvaja.info/WEB/buscador.php <- Buscando "delphi"
https://foro.elhacker.net/search.html <- Buscando "delphi"
http://forum.tuts4you.com/ <- Buscando "delphi"
http://www.google.com <- Buscando "delphi crackme"

Supongo que en todas estas páginas hay más crackmes hechos en delphi que simplemente no incluyen en su nombre "delphi" (sobre todo en tuts4you y en la de ricardo). Si sabéis de algún tute de algún crackme hecho en delphi (sobre todo en la página de ricardo) y que no tenga la palabra delphi en su título, os agradecería que me lo dijerais.

Saludos!
En línea

No quisiera parecer marica, pero los unicornios son una *****.
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Ayuda en delphi
« Respuesta #15 en: 11 Marzo 2012, 19:38 pm »

Una manera de hacerlo es aumentar el size en los datos de la IAT, al final te saldrán entradas inválidas, es ahí dónde puedes agregar las apis que desees :)

Hasle doble click a la entrada inválida y escoge la api que deseas, si están desordenadas, es decir apis convinadas de diferentes librearías deja un dword de 0s para que no haya problema.

Saludos,
Nox.
« Última modificación: 12 Marzo 2012, 16:51 pm por Иōҳ » En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
w0nt0n

Desconectado Desconectado

Mensajes: 124



Ver Perfil
Re: Ayuda en delphi
« Respuesta #16 en: 21 Marzo 2012, 20:29 pm »

Sigo probando cosas.

Ahora me ha dado por pensar que uno de los problemas por los que el DeDe y el IDR no funcionan correctamente es porque las resources del programa desempacado están estropeada.

Supongo que el programa tiene que leer las resources de alguna manera (aunque no tengo claro si los forms, textbox y demás tienen que formar parte del directorio de resources)
. Acabo de encontrar un post acerca de esto heep://forum.exetools.com/showthread.php?t=7748 , así que por el momento este post es un poco inútil.

En cualquier caso, sigo a ello.
En línea

No quisiera parecer marica, pero los unicornios son una *****.
apuromafo CLS


Desconectado Desconectado

Mensajes: 1.441



Ver Perfil WWW
Re: Ayuda en delphi
« Respuesta #17 en: 23 Marzo 2012, 13:17 pm »

desconozco que tipo de programa es o fue o sera pero te cuento algunos tips que te ayudaran a hacer un mejor dumpeado

por una parte la cita de exetools tiene 2 adjuntos, te los subo a mediafire aca por si te son necesarios
http://www.mediafire.com/?66ogen4cd9dnc6d

2) en cuanto a la iat y temas asi se ha hablado en ricardonarvaja
algunos ejemplos destaca creacion de la  iat a mano, hook de apis, uso de loaders y en temas mas propios como re-agregar una nueva iat

digamos que tienes toda la iat ok, y tienes listos los fordwarding..colocas al dump y ta mal..que harias?
te sugiero leas las notas apuntes sobre morphine, acprotect,nspack y otros packers que suelen crear capas si bien no dificiles, pero con un mini truco..pero tb hay otras que tienen trucos en telock, pespin y otras como msa complejas como vmprotect o Private exe protector, donde nisiquiera tendras los recursos en el exe sino todo emulado

el tema es que cuando ejecutas el programa llegas al oep, vas al LORD PE..y colocas alinear algo mas..desde el mismo menu y luego puedes dumpear de 2 formas..una intelligent mode ,y la otra, debes tener presente de agregar los recursos y alinearlo, y luego la iat, eso es todo para un packer super empacado con un desconocido

pero insisto, herramientas como SIRPE, CFF Explorer, pexplorer, te seran utiles en la primera parte de explorar el exe

te sugiero sigas leyendo pero no de webs, sino de crackslatinos
http://www.ricardonarvaja.info/WEB/buscador.php
busca primero iat, mano,estructura,injerto,hook, PE,
encontraras temas como
http://www.ricardonarvaja.info/WEB/CURSO%20NUEVO/TEORIAS%20NUMERADAS/401-500/494-%5BRVLCN%5D_IID%20%26%20IAT_by_%2BNCR.rar

y luego le das un recorrido completo desde
1) curso de ricardo
2) las mas de mil teorias numeradas

en final si lo lees posiblemente si lo guardas seran mas de 5gb de informacion, pero en si en 2 meses o 3 meses resolveras sin miedo o duda..
nota que nox, y otros mas ya han resuelto temas que a la fecha antes eran de dificil solucion

saludos Apuromafo
En línea

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

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Descarga] CodeGear RAD Studio - Delphi 2007 + Delphi for PHP « 1 2 3 »
Software
GroK 26 26,839 Último mensaje 14 Mayo 2014, 17:51 pm
por sebaseok
Ayuda conComboBox en delphi 10
Programación General
PopJonas 1 2,190 Último mensaje 15 Abril 2012, 03:18 am
por Shell Root
Ayuda con Delphi :(
Programación General
Anerol92 5 2,339 Último mensaje 7 Julio 2015, 04:01 am
por DarK_FirefoX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines