Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: tena en 11 Marzo 2006, 03:22 am



Título: CrackMe3 by tena
Publicado por: tena en 11 Marzo 2006, 03:22 am
Objetivo:
1-Eliminar la nag del comienzo
2-Encontrar el nombre y serial correcto.

http://www.freeuploader.com/view.php/129403.zip

Eliminaron la Nag y Parchearon el salto para que de siempre Correcto:
x4uth
OBERON CRACKER


Título: Re: CrackMe3 by tena
Publicado por: pERICOTE en 11 Marzo 2006, 04:00 am
A por la nag.... y por el ....
 ;D ;D ;D


Título: Re: CrackMe3 by tena
Publicado por: anjz en 12 Marzo 2006, 14:52 pm
Este crackme me tiene loco.
Parece como si estuviese empaquetado, pero el Peid me dice que no.
Coloco algunos breakpoint, pero no me sirve de nada, por mas que pulso F8 para seguir traceando el Olly no se mueve de la linea.
Y abajo el Olly me dice algo de pulsar SHIFT + F7 lo hago y la aplicación me suelta un error.
¿Que le has hecho tena???? :o


Título: Re: CrackMe3 by tena
Publicado por: OberonCracker en 12 Marzo 2006, 19:58 pm
Es porque tiene proteccion anti olly, por ello debes aprovisionarte de los plugins que lo ocultan para no tener problemas.

Bueno ya elimine la nag, y cambiando un solo salto lo he crackeado. Aunque debo confesar que el serial me esta costando.

Saludos


Título: Re: CrackMe3 by tena
Publicado por: anjz en 12 Marzo 2006, 23:11 pm
He visto que el problema es por una call que llama a RaiseException

7C81EB2D   FF15 0415807C    CALL DWORD PTR DS:[<&ntdll.RtlRaiseExcep>; ntdll.RtlRaiseException

He probado a nopear la call y nada. Ademas que si nopeo la call e intento guardar los cambios, me sale como si estuviese modificando kernel32.dll en vez del exe.
Tengo el Plugin de IsDebugPresent, pero tampoco me lo soluciona.
¿Acaso hay otro plugin para evitar que Olly sea detectado?

Si alguien me puede decir que pasos a seguido para quitarse la Raiseexception de encima que me lo diga por favor.


Título: Re: CrackMe3 by tena
Publicado por: pERICOTE en 12 Marzo 2006, 23:30 pm
 HideDebugger v1.23f
 IsDebug&ExtraHide
 HideDBG 
Con estos plugins tu olly sera una muralla, jejeje, y olvidate de de la RaiseException que es una excepcion generada justamente por la deteccion del debuger.
Revisa esta excelente pagina: http://www.ech2004.net/ver_noticias.php



Título: Re: CrackMe3 by tena
Publicado por: pERICOTE en 12 Marzo 2006, 23:38 pm
Tena creo que tiene que precisar si tanto el nombre como el serial son unicos, o es que el serial se genera en funcion al nombre.
Ademas tambien deberias indicar si el serial es de siete digitos y si algo tiene que ver la api rtcGetTimeVar y la hora, minutos y seguntos del sistema... jejeje
 ;D ;D ;D


Título: Re: CrackMe3 by tena
Publicado por: Crack_X en 13 Marzo 2006, 01:09 am
Lo he mirado por arriba y aunque yo no se mucho de esto puedo decir que usa FindWindowA para ver si el ollydbg esta abierto en caso de que este ahi produce el error o el anti-dbg. Cada ves que escribes una letra en el serial o en el nombre (uno de los dos) calcula un valor y con ese valor luego se calcula otro al darle al boton de Probar.

Xor u Or, uno de esos dos operadores se esta utilizando. Lo del nag se refiere a la ventanita que aparece diciendo "esto es un nag" ?


Título: Re: CrackMe3 by tena
Publicado por: anjz en 13 Marzo 2006, 01:21 am
Muy buena la pagina esa que recomendaste pERICOTE, pero a pesar de tener ya todos los plugins, no hay manera.
Me sigue saltando la raiseexception esa de las narices.
He probado todos.
No se muy bien, para que son muchas cosas.

En el HideDBG, uso la opcion HideAll, y no da resultado (tambien lo he probado usando una por una todas las opciones).

En el HideDebugger, he probado seleccionando todas las posibles protecciones, y tampoco da resultado. Al final hay una que pone Detach, he probado con ella activada y sin ella.

En el IsDebuggerPresent he probado con el extrahide y tampoco resulta.

Yo simplemente cargo la aplicacion en olly aplico cualquiera de las protecciones mencionadas antes, pulso F9 y en vez de ver la aplicacion ejecutandose, se me para justo una linea por debajo de la dichosa CALL que llama a raiseexception.

Mientras escribia esto he visto que Crack_X ha publicado una respuesta diciendo que usa FindWindowA, y he vuelto a probar a usar HideDebugger con la opcion de FindWindow activada, pero nada que no hay manera.

No se que pasa. Si alguien me puede echar una mano se lo agradecería.


Título: Re: CrackMe3 by tena
Publicado por: OberonCracker en 13 Marzo 2006, 03:46 am
Lo que recomendaria al amigo anjz:
1.- Bajate el OllyDbg protegido (El OllyDbg protegido para no ser detectado por packers como ExeCrypt y parecidos, solo es el EXE).
Lo unico que haras es colocar el exe en el directorio del olly y alli lo ejecutas (En mi caso mi directorio se llama PepeDbg y el referido exe Parcheado 4, su funcionalidad es la misma) se supone que no debe haber ningun con los plugins, los cuales deben estar debidamente instalados.
2.- Tambien puedes probar configurando el propio olly dando click en "Options" de la barra de tareas del olly luego en "Debuggin options" y despues en "Exceptions" y alli marcar todas las opciones para que el olly no pare en nignuna excepcion.
Espero que soluciones el problemita que tienes. Saludos y suerte. 


Título: Re: CrackMe3 by tena
Publicado por: tena en 13 Marzo 2006, 05:53 am
Y abajo el Olly me dice algo de pulsar SHIFT + F7 lo hago y la aplicación me suelta un error.

Anj, debes configurar el ollydbg de la siguiente manera: Te vas a "Debuggins Options" y en la parte de Excepciones tenes que tildar las opciones de "Ignore Memory access", "All FPU Ecxeptions" e "Ignare also Following" y en esta ultima le tenes que agregar las excepciones: 0EEDFADE, 80000004, C0000005 y C000008F.

Con eso el programa corre sin pararse en ninguna excepcion.


Título: Re: CrackMe3 by tena
Publicado por: tena en 13 Marzo 2006, 06:21 am
El nombre es de longitud 9 (y puede haber mas de uno) y  el serial se genera en funcion de...... :-X.........Pericote anda cerca y Crack_X muy cerca.

Para el serial Debes Fijarte como se genera, pues talves ya lo encontraste y lo probaste ( si es que encontraste el nombre ) y te preguntaras ¿Porque me dice INCORRECTO?

Como Dije antes Pericote esta cerca y Crack_X tambien.

PD: Esta herramienta que me hice les podria ayudar para sacar un nombre. Pero aun no les dire como.
www.freeuploader.com/view.php/130371.zip (http://www.freeuploader.com/view.php/130371.zip)

Saludos y Suerte
                              TENA


Título: Re: CrackMe3 by tena
Publicado por: - n0sEcReT - en 13 Marzo 2006, 09:12 am
Pues aqui va una ayudita para los que estan tratando de crackear este crackme , lo que explico en la imagen es para que cuando ejecutemos el crackme ,este mismo no detecte el OllyDBG y se cierre.
Creo que esto lo hace usando la siguiente API para buscar la ventana del Olly:

Código:
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

toma el texto de Label3 y busca si alguna ventana contiene ese texto o tambien puede ser que busque en la lista de procesos,eso los abe Tena nomas xD.

(http://img78.imageshack.us/img78/7466/17ny1.gif)


Al Winvi los pueden descargar desde http://www.winvi.de/es/ como tambien pueden usar otro editor hexadecimal.

Espero que les sea de ayuda...

Salu2 ! el Agente Naranja xD


Título: Re: CrackMe3 by tena
Publicado por: anjz en 13 Marzo 2006, 10:57 am
Hola, gracias a todos.
He de decir que lo de hacer que ignore las excepciones:
Citar
Anj, debes configurar el ollydbg de la siguiente manera: Te vas a "Debuggins Options" y en la parte de Excepciones tenes que tildar las opciones de "Ignore Memory access", "All FPU Ecxeptions" e "Ignare also Following" y en esta ultima le tenes que agregar las excepciones: 0EEDFADE, 80000004, C0000005 y C000008F.
hace que no me salte la excepcion, pero la aplicación finaliza.(Abajo a la derecha pone Terminated).

El Ollydbg Protegido, encontre un enlace que me lleva a la FTP de Ricardo Narvaja, pero parece ser que el archivo ya no se encuentra ahí.

Y el truco de nosecret, me ha parecido muy bueno (para aplicaciones que usen este metodo para reconocer a olly).

Lo que no entiendo es porque los plugins no me han funcionado.


Título: Re: CrackMe3 by tena
Publicado por: tena en 13 Marzo 2006, 16:18 pm
hace que no me salte la excepcion, pero la aplicación finaliza.(Abajo a la derecha pone Terminated).

Entonces funciona bien, debes eliminar el anti olly. Puedes hacerlo como Nosecret.


Título: Re: CrackMe3 by tena
Publicado por: tena en 17 Marzo 2006, 17:02 pm
 :o que pacho Fenano?  :huh: 
Nadinga nadinga.


Título: Re: CrackMe3 by tena
Publicado por: anjz en 18 Marzo 2006, 13:15 pm
 :-( Se demasiado poco como para hacer ninguna de las dos cosas que se piden a este crackme. :-\

Intenté cargarme la nag, y en vez de cargarme la nag me cargaba el form principal, jaja.
Y a la hora de intentar aunque sea parchear para que acepte cualquier serial, el problema es que no se en que exacto momento, me dice si esta bien o está mal. Cuando salta un msgbox o algo así es facil, porque se nota perfectamente el momento en que aparece. Pero como aqui lo unico que sucede es que la propiedad visible de la imagen se pone a true, pues no se exactamente cuando sucede.

He estado intentando a ver si podía cambiar las propiedades del form de la nag, para poner la propiedad visible a false, pero me he liado mucho ya que no es una simple linea que esté a 00 y haya que ponerla a 01, creo que cambian muchas mas cosas.


Título: Re: CrackMe3 by tena
Publicado por: Crack_X en 19 Marzo 2006, 18:48 pm
Alguien puede explicar como saltarse el nag de que se abra el 2do form. No encuentro como quitarlo  :(


Título: Re: CrackMe3 by tena
Publicado por: pERICOTE en 20 Marzo 2006, 00:13 am
Vemos que los programas en VB empiezan por un PUSH y un CALL anotar la dirección que esta enviando al stack, en este caso 40415C.
A esa dirección hay que sumarle 4C o sea
40415C + 4C 
igual a 4041A8
Allí esta, ahora buscamos la dirección que encontramos allí en 4041A8 que es 4041F8
Busquemos dicha direccion en el dump
Vemos entradas de 50 hexa de largo, cada una corresponde a un FORM, en cada una de esas partes el byte 24 (36 decimal) nos muestra el orden que tienen las forms para aparecer, veamos
4041F8+24=40421C
Allí esta el 00 significa que esa form es la primera que aparecerá y el 01 significa que es la segunda que aparecerá, así que podemos alterar el orden.
Ahí esta ahora lo primero que aparecerá será el programa jeje y la nag segundo o nunca ya que al cerrar el programa ya se cierra y no sale una segunda form.

 

 ;D ;D ;D


Título: Re: CrackMe3 by tena
Publicado por: anjz en 20 Marzo 2006, 17:13 pm
o_O desconocía ese truco.
Muchas gracías, muy bueno.


Título: Re: CrackMe3 by tena
Publicado por: pERICOTE en 28 Marzo 2006, 02:36 am
¿Alguien consiguio el serial? Despues de tanto esfuerzo merecemos un tute, ¿no creen?


Título: Re: CrackMe3 by tena
Publicado por: tena en 31 Marzo 2006, 17:05 pm
Ultimamente estuve muy ocupado, tratare de subir un tute, o pasos a seguir diria yo para encontrar el name/serial de este crackme, tal vez lo suba esta noche o mañana.

      Saludos......        TENA 


Título: Re: CrackMe3 by tena
Publicado por: tena en 2 Abril 2006, 06:15 am
Bueno aqui esta el tute y Espero no confundirlos.

www.freeuploader.com/view.php/141121.zip (http://www.freeuploader.com/view.php/141121.zip)

Saludos                       tena


Título: Re: CrackMe3 by tena
Publicado por: OberonCracker en 4 Abril 2006, 02:31 am
Excelente muy bien explicado, lo he seguido al pie de la letra y lo he conseguido, muchas gracias tena, por permitirme aprender otras cosas mas.