MadCrack: CrackMe v1 by MadAntrax

Iniciado por Mad Antrax, 30 Agosto 2008, 04:33 AM

0 Miembros y 1 Visitante están viendo este tema.

Mad Antrax

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
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

Mad Antrax

#1
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.

;)
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

karmany

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

apuromafo CLS

#3
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

Mad Antrax

#4
Cita de: apuromafo en 30 Agosto 2008, 20:49 PM
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!! :)
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

apuromafo CLS

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..



karmany

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.

Mad Antrax

Cita de: karmany en  1 Septiembre 2008, 07:36 AM
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!!
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.

karmany

Cita de: ||MadAntrax|| en  1 Septiembre 2008, 09:20 AM
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.

Mad Antrax

Cita de: karmany en  1 Septiembre 2008, 10:19 AM
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!!)
No hago hacks/cheats para juegos Online.
Tampoco ayudo a nadie a realizar hacks/cheats para juegos Online.