Foro de elhacker.net

Programación => Ingeniería Inversa => Mensaje iniciado por: Mad Antrax en 4 Septiembre 2008, 22:58 pm



Título: MadCrack: CrackMe v2 by MadAntrax (en desarrollo...)
Publicado por: Mad Antrax en 4 Septiembre 2008, 22:58 pm
MadCrack v2 (actualmente en desarrollo)

Última actualización: 04/09/08
Actualmente no se puede descargar este crackme, sed pacientes...

Bueno, aquí mi segunda versión (y posiblemente la última) de crackme's. Voy a dejar este post bloqueado y pegado, ya que diariamente iré completándolo poco a poco, subiendo más información e imágenes. Cuando lo tenga terminado lo desbloquearé y subiré el ejecutable para que os divirtáis un poco...

Información del CrackMe

En realidad no es el típico crackme al que estáis acostumbrados, este es del tipo Multi-Crackme, implementa las funciones de protección más comunes y otras funciones home-made (caseras, programadas por mí), entre las pruebas que hay que superar se encuentran las siguientes:

  • Nag-Screen
  • CheckBox Hive (home-made)
  • Push the CrazyButton (home-made)
  • Username & Password (el típico)
  • KeyFile (with CRC32 validation)
  • Number Hive (home-made)

¿Como está protegido?

Cada prueba puede ser superada de varias formas, algunas parcheando y otras no. Para poner las cosas más interesantes se han incluido 15 rutinas para proteger el crackme y evitar ser debuggeado, estas son:

  • Using a Loader
  • InstallASM_Thread()
  • BinaryFile Metamorphed
  • BinaryFile Packed with ¿...?
  • OutputDebugStringA()
  • GetTickCount
  • IsDebuggerPresent
  • Más protección que no puedo contar
  • ¿...?

Como está programado?

Bien, como en todas mis aplicaciones, sólo programo en VB6. Pero he querido hacer algo nuevo y divertido. He programado el crackme por módulos, cada módulo está dentro de un proyecto por separado, programado como DLL ActiveX (es decir, con extensión *.dll real). Algunas funciones y protecciones son llamadas a través de estas librerías que yo mismo he programado, así parece un entorno más real y divertido ¿no?

Encontraréis algunos ejecutables compilados bajo VB6 P-Code, otros como EXE ActiveX, otros como DLL ActiveX y otros como un simple VB6 native (el típico). Para finalizar, algunos módulos crean RemoteThreads e inyectan en ellos funciones directamente en ASM, que se encargan de proteger al crackme y hacer otras comprobaciones (esto pone las cosas más difíciles al debugger)

Bueno, a medida que vaya avanzando publicaré mas cosas, de momento os dejo unos screen-shoots:

La Nag-Screen:
(http://img295.imageshack.us/img295/9264/crack1ja1.jpg)

El CheckBox Hive (buenísimo):
(http://img295.imageshack.us/img295/8617/crack2fb2.jpg)

El CrazyButton:
(http://img222.imageshack.us/img222/5853/crack3gd7.jpg)

El típico User & Pass:
(http://img295.imageshack.us/img295/1686/crack4ak9.jpg)



Bueno, lo dicho. Se aceptan sugerencias, mejoras, ideas... Me gustaría dejar un crackme bien completo para que cada uno pueda aprender a saltarse los distintos tipos de protecciones más conocidos (nag's, keyfiles, user & pass, hives array's, etc...)

Actualmente no se puede descargar este crackme, sed pacientes...

Saludos!! MadAntrax


Título: Re: MadCrack: CrackMe v2 by MadAntrax (en desarrollo...)
Publicado por: Karcrack en 6 Septiembre 2008, 17:06 pm
Madre mía :laugh:, a ver quien es el chulo que lo creackea entero :laugh:...

Bueno, a mi me parece una buena idea añadir algún tipo de auto-validación, comprobando por ejemplo, el MD5 del fichero sea siempre el mismo, para que si se modifica el fichero no pueda seguir usándose... no se si me explico muy bien :P

Por cierto, estoy interesado en eso que dijiste que usabas Remote Threads en ASM, que método usas? CallWindowProc?

Saludos :D

PD: Espero que no tengas que desvelar mucha información sobre el CrackMe ;)