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


Tema destacado: [AIO elhacker.NET] Compilación herramientas análisis y desinfección malware

+  Foro de elhacker.net
|-+  Programación
| |-+  Ingeniería Inversa (Moderadores: Shaddy, karmany)
| | |-+  MadCrack: CrackMe v1 by MadAntrax
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: MadCrack: CrackMe v1 by MadAntrax  (Leído 4,533 veces)
||MadAntrax||
Lab Member
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.525


Mala hierba nunca muere!


Ver Perfil WWW
MadCrack: CrackMe v1 by MadAntrax
« en: 30 Agosto 2008, 04:33 »

Hola a todos, éste es mi primer mensaje en este foro... varios usuarios me comentaron por privado: "tú sabes programar bastante, seguro que tus crackme's son complicados..." así que con éste comentario decidí programar mi primer crackme para vosotros:



Programado en VB6
Ejecutable empacado (se escribe así, no?)
Ejecutable protegido: Tiene 2 métodos de protección anti-debug
Dificultad: fácil

------------------------------

Este crackme es del tipo: KeyFile-crackme. Necesitas crear un fichero en la misma raíz del crackme para registrarlo. Es parecido al método que Kaspersky utiliza con su keyfile, pero en éste caso el keyfile sólo tiene que estar en la misma carpeta del ejecutable.

Hay 2 formas para completar este crackme

Método 1: Parchear el ejecutable para que acepte cualquier keyfile (o sencillamente hacerlo funcionar sin keyfile)

Método 2: Encontrar el KeyFile correcto, sin parchear ni modificar el ejecutable

Evidentemente, el segundo método tiene más mérito, los usuarios que completen éste crackme pondré su nick al final y pondré si lo han resuelto por el método 1, 2 o los dos.

Usuarios que lo han resuelto:

  • karmany: Método 2 -> Lo ha resuelto sin parchear el ejecutable!!

El crackme está adjunto al final de este primer mensaje, sólo visible a los usuarios registrados
« Última modificación: 4 Septiembre 2008, 23:02 por ||MadAntrax|| » En línea

||MadAntrax||
Lab Member
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.525


Mala hierba nunca muere!


Ver Perfil WWW
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #1 en: 30 Agosto 2008, 04:36 »

Para que se entienda mejor, una foto con el crackme resuelto por el método 2:



El ejecutable está sin modificar, y se ha hallado el nombre correcto del keyfile con su contenido correcto, convirtiendo el cuadro en color verde.

Ojo, la foto es un ejemplo, el keyfile correcto no se llama "filekey"

Otra pista, el crackme tiene 2 protecciones activas, una de ellas conocidas por todos vosotros, la otra función es casera (programada por mi), a ver si os la saltáis!! xD (No le gusta demasiado el Ollydbg a mi crackme...) Os recomiendo que lo probéis con el Antivirus deshabilitado, mi protección es algo agresiva y algunos antivirus finalizan la ejecución del propio crackme.exe

Podéis estar tranquilos que el ejecutable no modifica en ningún momento vuestro sistema.

 ;)
« Última modificación: 30 Agosto 2008, 04:39 por ||MadAntrax|| » En línea

karmany
Moderador
***
Desconectado Desconectado

Mensajes: 1.254



Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #2 en: 30 Agosto 2008, 15:48 »

Qué sorpresa. MadAntrax...

Cierto, buen programador, yo he visto algunas aportaciones que has hecho en elhacker.
Bueno, yo te prometo que le echaré un vistazo cuando pueda.

Ahora no puedo descargarlo.

Un saludo
karmany
En línea

- "Tu sitio para aprender, enseñar y compartir"
apuromafo


Desconectado Desconectado

Mensajes: 640


Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #3 en: 30 Agosto 2008, 20:49 »

saludos, creeme que ollydbg encuentra 2 cosas interesantes, antes de comenzar todo

desempacar un upx relativamente y quizas tenga alguna funcion que es comun.., no dare mayor detalle hasta ejecutarlo

ahora consejo para quienes lo vean es un vb que tiene similitud de ser vb-pcode
y que usa scripts de vbs

a mi me aparece
---------------------------
Proyecto1
---------------------------
Run-time error '429':

ActiveX component can't create object
---------------------------
Aceptar   
---------------------------
eso debe pasar porque quizas hace referencia a un vbs
 CreateObject("scripting.filesystemobject"


pero bueno, intentare en la semana encontrar un S.O con mas privilegios

Call splet()
 DoEvents
Check_KeyFile()
Exit Sub


por lo demas el clsCRC es puro algoritmo de conversiones y todo eso

creo que no tendre tiempo de verlo pero

OpenProcess
Process32Next

No es problema para el olly , con plugins
saludos Apuromafo
y mis felicidades al programador


verde /color;green
Shape1.Backcolor = RGB(CInt(crypt("1")), CInt(crypt("344")), CInt(crypt("1")))

rojo /color;red
Shape1.Backcolor = RGB(CInt(crypt("344")), CInt(crypt("1")), CInt(crypt("1")))


saludos y creeme que este es solo el primer paso para el metodo 1

aun veo si ese xor sera el metodo 2

pero para el 2 tb influye el
   Hex(CVar("edoc***" & StrReverse))
   If (var_100 = crypt("2@G8***"))

coloque 3 asteriscos ademas..

y aun nisiquiera se ejecuta en mi pc

saludos Apuromafo
lo baje hoy sabado 30/08

veamos si mañana lo veo en otro S.O.

espero este mini apunte sea util para quien tenga animos de resolverlo por el metodo 1
« Última modificación: 30 Agosto 2008, 20:54 por apuromafo » En línea

Quidquid latine dictum sit altum viditur



saludos .en un tiempo estare offtopic..(no es broma de dia de inocentes).// Retired de ing inversa
saludos Apuromafo
||MadAntrax||
Lab Member
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.525


Mala hierba nunca muere!


Ver Perfil WWW
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #4 en: 30 Agosto 2008, 21:03 »

Run-time error '429':

ActiveX component can't create object
eso debe pasar porque quizas hace referencia a un vbs
 CreateObject("scripting.filesystemobject"

Desde que SO lo estas ejecutando? Cualquier Windows ha de poder crear el objeto: Scripting.FileSystemObject ... :S Si utilizas Vista... desactiva UAC o eleva privilegios de Admin.

Por cierto, vas muy bien encaminado, el método 1 (parchear el fichero) lo sacarás seguro, anímate con el método 2

Saludos!! :)
« Última modificación: 30 Agosto 2008, 21:05 por ||MadAntrax|| » En línea

apuromafo


Desconectado Desconectado

Mensajes: 640


Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #5 en: 30 Agosto 2008, 21:34 »

mi windows es una variante de  suricata
con bloqueo de wscript y bat script y autorun.inf sin permisos de crss y algunas mas
no existe windows como este, pues esta alterado para mi uso y evitar cualquier troyano desconocido que moleste cuando estoy en estudios

ahora solo comentaba eso, pues solo dedico al cracking o ingenieria inversa unos 3 minutos y despues sigo con mis tareas y trabajos que son larguisimos
ahora bien, es un XP sp2

pero de ahi me cambio de S.O para acceder a este..
aunque no lo creas como el pc de Apuromafo no hay..


En línea

Quidquid latine dictum sit altum viditur



saludos .en un tiempo estare offtopic..(no es broma de dia de inocentes).// Retired de ing inversa
saludos Apuromafo
karmany
Moderador
***
Desconectado Desconectado

Mensajes: 1.254



Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #6 en: 1 Septiembre 2008, 07:36 »

Bueno, yo he conseguido de momento crackearlo.

No voy a hacer el "crack" porque hay que evitar unas cuantas comparaciones (CRC etc...) y quedaría muy "feo" para mi gusto, así que voy a examinar el "keyfile" a ver si lo consigo.

PD. Odio el P-Code.
En línea

- "Tu sitio para aprender, enseñar y compartir"
||MadAntrax||
Lab Member
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.525


Mala hierba nunca muere!


Ver Perfil WWW
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #7 en: 1 Septiembre 2008, 09:20 »

PD. Odio el P-Code.

Jejejeje, realmente no es un P-Code... son 2 P-Code. Mirar en un editor hexadecimal y buscar el string: {UPX#!
Justo después de ese string encontrareis otro ejecutable.... (¿será una pista? xD)

Saludos!!
En línea

karmany
Moderador
***
Desconectado Desconectado

Mensajes: 1.254



Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #8 en: 1 Septiembre 2008, 10:19 »

Mirar en un editor hexadecimal y buscar el string: {UPX#!

Sí ya lo vi, porque aunque odio los P-Code, una de las desventajas que tiene trabajar con opcodes es que cuando "traduces" esos opcodes obtienes todo el código que tú has utilizado.

Por ejemplo, yo he desempacado UPX solamente para analizar tu programa y he utilizado VB Decompiler Lite y sale todo lo que has utilizado. Incluso a las funciones las has llamado de forma entendible: clsCRC, add_bytes, check_Keyfile etc... sólo es cuestión de seguir analizando un poco.

PD. Me está gustando mucho la forma en que lo has programado. Aunque no parece muy difícil, es una protección muy interesante. Buen trabajo, aunque no tengo tiempo seguiré analizándolo. Recomendado a todo usuario que quiera aprender.
En línea

- "Tu sitio para aprender, enseñar y compartir"
||MadAntrax||
Lab Member
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.525


Mala hierba nunca muere!


Ver Perfil WWW
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #9 en: 1 Septiembre 2008, 14:44 »

PD. Me está gustando mucho la forma en que lo has programado. Aunque no parece muy difícil, es una protección muy interesante. Buen trabajo, aunque no tengo tiempo seguiré analizándolo. Recomendado a todo usuario que quiera aprender.

Gracias por los comentarios, estoy preparando la segunda versión del CrackMe que será del tipo: Multi-CrackMe, es decir:

  • NAG Screen
  • KeyFile
  • Nombre de Usuario y Password
  • Habilitar Controles
  • y alguna sorpresa más...

Para hacerlo más dirvetido, simularé un entorno real de aplicación, es decir, un ejecutable con sus librerias, DLL's y controles ActiveX programados por mi :)

Para rematar, usaré CactusMetamorph para modificar el binario y evitar que lo decompileis con VB Decompiler o similares... espero que salga bien mi idea y disfruteis crackeando

Saludos!! (este crackme ya casi lo teneis solucionado!!)
En línea

...........

Desconectado Desconectado

Mensajes: 281


Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #10 en: 1 Septiembre 2008, 15:38 »

Le eché un vistazo ayer y vi que no era un vb normal, así que de momento, hasta que que no aprenda más sobre estructura de programas en vb, no intentaré siquiera resolverlo. En fin, este post inútil es para agradecerte el aporte.
En línea
karmany
Moderador
***
Desconectado Desconectado

Mensajes: 1.254



Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #11 en: 4 Septiembre 2008, 07:15 »

Ayer tuve tiempo de echarle un vistazo y primeramente quiero decirte MadAntrax que me has sorprendido muchísimo. ¿Quién iba a pensar que desde VB pudieses hacer tal cosa? muy bien.

Ya he destripado el crackme MadCrack y ya sé cómo analiza el "filekey" y cuál es el algoritmo para que sea correcto. Aún me quedan algunas lagunas por descubrir pero bueno...
Como has hecho una tabla tan grande (tú ya sabes a qué me refiero) tengo que hacer Fuerza Bruta y ahora cuando tenga tiempo estoy creando en ensamblador un programa que encuentre por Fuerza Bruta un keyfile correcto. Espero que no hayas puesto muchos caracteres o espero encontrar cualquier keyfile correcto. Sólamente voy a utilizar en principio caracteres desde 20h (espacio) hasta 7A (Z mayúscula). Veré si va rápido.

Un saludo
karmany
En línea

- "Tu sitio para aprender, enseñar y compartir"
||MadAntrax||
Lab Member
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.525


Mala hierba nunca muere!


Ver Perfil WWW
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #12 en: 4 Septiembre 2008, 09:08 »

Espero que no hayas puesto muchos caracteres o espero encontrar cualquier keyfile correcto. Sólamente voy a utilizar en principio caracteres desde 20h (espacio) hasta 7A (Z mayúscula). Veré si va rápido.

Vas bien encaminado, el keyfile es de pocos caracteres. Pero yo de ti ampliaría la búsqueda desde Ascii 0 hasta el Ascii 255

Saludos y felicidades...
En línea

karmany
Moderador
***
Desconectado Desconectado

Mensajes: 1.254



Ver Perfil
Re: MadCrack: CrackMe v1 by MadAntrax
« Respuesta #13 en: 4 Septiembre 2008, 14:37 »

Bueno conseguí (si no me equivoco) crear un filekey correcto.
Yo sólo he necesitado 4 caracteres, así que es asequible por fuerza bruta.

Para los que quieran analizarlo, recomiendo descomprimir el UPX solamente para analizarlo por ej. con VB Decompiler Lite o con P32Dasm. Después cargar el original crackme en el OllyDBG e ir poniendo Breakpoints en los offsets que se crea convenientes... poco a poco ya que requiere mucho análisis

Un saludo

PD. Como lo que yo quiero es que la gente aprenda, dejaremos un tiempo este programa para que la gente lo intente resolver y sino sacaré tiempo para hacer un pequeño tute de cómo lo he resuelto y también mostraré el programa que he hecho en ASM para Fuerza Bruta.
« Última modificación: 4 Septiembre 2008, 14:41 por karmany » En línea

- "Tu sitio para aprender, enseñar y compartir"
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines