Hola a todos
Después de unos aburridos días de Agosto, he decidido programar un nuevo crackme para la gente del foro, se llama easycrackme
(http://i.imgur.com/iJ440xW.png)
- Autor: MadAntrax
- Tipo: Keygen Me
- Packed: NO
- Programado: VB6 (Native + P-Code + ActiveX DLL)
- Protección: Ofuscación de Strings
No se hacen referencias a
__vbaStrCmp ni
MSVBVM60.rtcMsgBox :)
INSTRUCCIONES PARA QUE EL CRACKME FUNCIONEComo has podido observar, el crackme tiene un fichero DLL llamado
madantrax.dll, para que funcione todo correctamente hay que registrar la DLL en el sistema, sigue los siguientes pasos:
- Descomprimir el crackme
- Copiar en fichero madantrax.dll en la carpeta C:\
- Ejecuta una ventana de comandos CMD
- Ejecuta el comando regsvr32 C:\madantrax.dll
(http://i.imgur.com/jj1nyxY.png)
Es una DLL ActiveX de VB6 y se tiene que registrar en el sistema para poder utilizarla. A partir de ahí podréis ejecutar el
easycrackme.exe sin problemas.
El crackme es muy sencillo, tienes que encontrar el serial code correcto que se corresponde el hardware fingerprint generado.
No se puede parchearPara lograr susperar el crackme necesitas encontrar el serial code correcto. Si lo consigues puedes programar un keygen. Si no sabes programar un keygen o no tienes tiempo, envíame tu fingerprint y el código correcto. Si puedes escribe un tutorial explicando como resolviste el crackme.
http://www.mediafire.com/?jb1idzxb2268qe2
O perfecto, seguramente los pros te dirán que es muy muy fácil pero para mi nivel me va genial.
Saludos, si lo consigo posteo el keygen, sino me meto a estudiar cracking hasta que me sangren los hojos xD
Vale... Copio la dll y no funciona.
Pues no me funciona ni en windows 8 ni en xp! da un error de activex
Disculpad, me he dejado un pequeño paso para que la DLL se registre en el sistema:
- Descomprimir el crackme
- Copiar en fichero madantrax.dll en la carpeta C:\
- Ejecuta una ventana de comandos CMD
- Ejecuta el comando regsvr32 C:\madantrax.dll
(http://i.imgur.com/jj1nyxY.png)
Es una DLL ActiveX de VB6 y se tiene que registrar en el sistema para poder utilizarla. A partir de ahí podréis ejecutar el
easycrackme.exe sin problemas.
Bueno, hace unas horas bajé el proggie y acabo de mirarlo. Si bien ya he visto cómo funciona toda la cosa, no he podido generar un serial válido aún (maldito NOT!).
De todas formas, si no hay mucha participación, posteo lo que pude encontrar en este tiempo (y quizas tenga una posible solucion para entonces).
Saludos!
PD: Este keygenme no es tan easy como parece, pero lo veo muy útil para los que están comenzando...
Cita de: MCKSys Argentina en 26 Agosto 2013, 03:29 AM
Bueno, hace unas horas bajé el proggie y acabo de mirarlo. Si bien ya he visto cómo funciona toda la cosa, no he podido generar un serial válido aún (maldito NOT!).
De todas formas, si no hay mucha participación, posteo lo que pude encontrar en este tiempo (y quizas tenga una posible solucion para entonces).
Saludos!
PD: Este keygenme no es tan easy como parece, pero lo veo muy útil para los que están comenzando...
Eiii, no esperaba menos de ti, siempre destripas mis creaciones :(
Una pregunta, el hecho de incluir parte del código en una DLL ActiveX te ha dificultado el trabajo? Si hubiera incluído el algoritmo del cálculo del Hardware Fingerprint en la DLL (en lugar del EXE) te hubiera provocado algún dolor de cabeza adicional?
Te hago éstas preguntas principalmente porque no tengo ni idea hasta que punto el código de una DLL ActiveX pueda aumentar o no la dificultad.
Por otra parte, y como bien dices, el algoritmo del keygen/serial no es muy complicado, pero ese NOT del final lo complica todo :)
Ánimo, si alguien es capaz de sacar un keygen de éste crackme seguro que tú estás entre ellos.
Cita de: ||MadAntrax|| en 26 Agosto 2013, 08:39 AM
Una pregunta, el hecho de incluir parte del código en una DLL ActiveX te ha dificultado el trabajo?
La verdad, no. En este caso la DLL tampoco hace mucho que digamos y el hecho de que sea un COM facilita la cosa, porque se puede inspeccionar con herramientas para componentes ActiveX (yo la he mirado con el mismo VB 6).
Ten en cuenta que VB ya esta viejito y hay muchas herramientas para atacarlo. Más aún cuando se usa PCODE.
Aparte, siempre usé VB para hacer "experimentos" por lo que lo conozco bastante bien "por dentro".
Cita de: ||MadAntrax|| en 26 Agosto 2013, 08:39 AM
Si hubiera incluído el algoritmo del cálculo del Hardware Fingerprint en la DLL (en lugar del EXE) te hubiera provocado algún dolor de cabeza adicional?
Es probable. El dispersar la funcion que genera/checkea el serial, complica siempre las cosas.
Saludos!
PD: Espero que con la info extra que se ha dado, se animen más compañeros en la causa... :P
Si, VB6 ya huele un poco mal de lo viejo que está, pero a mis años no voy a ponerme con otro lenguaje jeje.
A ver si alguien lo resuelve pronto, no he querido ni añadir anti-debugg ni tampoco compresiones (pack), solo quiero que os centréis en destripar el algoritmo del programa.
Como lo llevas? Has podido sacar alguna coincidencia? Piensa que el algoritmo que genera el HW-fingerprint y el algoritmo que valida el serial es exactamente igual, solo que uno de los saltos condicionales está con NOT
Saludos!!
PD: Tengo en la recámara otro crackme para que juguéis con él, pero antes quiero ver los "puntos flacos" de éste crackme para "solucionarlos"
Pues yo de momento no conseguí nada. Ahora me pondré en serio y a ver si puedo.
Saludos
HOLA!!!
Mad, me pasas el codigo del vortice espacial de estrellas? XD
GRACIAS POR LEER!!!
Cita de: ||MadAntrax|| en 26 Agosto 2013, 15:06 PM
Como lo llevas? Has podido sacar alguna coincidencia? Piensa que el algoritmo que genera el HW-fingerprint y el algoritmo que valida el serial es exactamente igual, solo que uno de los saltos condicionales está con NOT
En realidad ya tengo una especie de keygen (tengo el algo del HW, he reverseado todas las funciones y tengo las opuestas de las mismas).
Pero cuando intento generar el HW usando el inverso de la segunda función (la del NOT), no obtengo un serial "intermedio" válido. Llamo serial intermedio al que sale despues de los DIVs por diez, que tiene largo <= 10... [STOP]
No quiero poner mucha info para no arruinarles el juego a los demás.
Pero, como puse antes, si no hay movimiento en unos dias, pongo todo lo que he visto, a modo de tutorial online...
Saludos!
Cita de: 79137913 en 26 Agosto 2013, 16:56 PM
HOLA!!!
Mad, me pasas el codigo del vortice espacial de estrellas? XD
GRACIAS POR LEER!!!
Está posteada en la sección de VB6, lo curioso es que tú ya leíste en su día ese hilo jeje. Aquí lo tienes:
http://foro.elhacker.net/programacion_visual_basic/source_efectos_para_una_bonita_interfaz_gui-t383746.0.html
CitarEn realidad ya tengo una especie de keygen (tengo el algo del HW, he reverseado todas las funciones y tengo las opuestas de las mismas).
Pero cuando intento generar el HW usando el inverso de la segunda función (la del NOT), no obtengo un serial "intermedio" válido. Llamo serial intermedio al que sale despues de los DIVs por diez, que tiene largo <= 10... [STOP]
No quiero poner mucha info para no arruinarles el juego a los demás.
Pero, como puse antes, si no hay movimiento en unos dias, pongo todo lo que he visto, a modo de tutorial online...
Saludos!
No te cortes en publicar info del algoritmo en el hilo. Vas muy bien encaminado, por lo que veo creo que ya lo has destripado por completo, solo te falta hallar una coincidencia. Si aceptas una recomendación: Programa un keygen automático que por fuerza bruta consiga una coincidencia, suena bestia pero creo que terminarás antes. Está claro que un keygen válido no te saldrá, pero hallarás una combinación correcta.
HOLA!!!
Gracias Mad, no encontraba el post!
GRACIAS POR LEER!!!
Después de hacer unas pruebas de fuerza bruta, he llegado a la conclusión de que hay HW's (y muchos) que NO tienen un serial válido.
Al menos hice pruebas con "seriales intermedios" de 10 chars (que demoraron unas 2 horas c/u) y no pude generar distintos HW's (cabe destacar que el HW cambia, por ej., con el path donde esté el proggie).
Este viernes posteo mis descubrimientos.
Saludos!
Cita de: MCKSys Argentina en 27 Agosto 2013, 05:27 AM
Después de hacer unas pruebas de fuerza bruta, he llegado a la conclusión de que hay HW's (y muchos) que NO tienen un serial válido.
Al menos hice pruebas con "seriales intermedios" de 10 chars (que demoraron unas 2 horas c/u) y no pude generar distintos HW's (cabe destacar que el HW cambia, por ej., con el path donde esté el proggie).
Este viernes posteo mis descubrimientos.
Saludos!
Puede ser que mi programa no tenga serial válido??
Ayer estuve toda la tarde intentándolo y nada. Cuando pense que lo tenia no era...
Saludos
Bueno, llegado a éste punto os voy a indicar algún hint para que podáis generar el keygen, la idea es la siguiente:
Como ya se ha dicho, la generación del HW-fingerprint tiene en cuenta la ruta del ejecutable, partiendo de éste punto, el keygen constará de 2 partes que se complementan, la primera parte (y la más importante) es poder generar un serial válido a partir de un HW-fingerprint inventado por ti mismo. La segunda parte del keygen deberá poder generar la ruta del ejecutable que permita generar el HW-fingerprint que se haya calculado en la primera parte del keygen, en resumen:
1) keygen genera un HW-fingerprint y su serialcode correcto correspondiente (El HW-fingerprint lo establece el propio keygen, será inventado).
2) keygen calcula la ruta exacta que deberá tener el programa para que el crackme genere el HW-fingerprint "inventado" del punto anterior.
Ejemplo práctico inventado:
1) El keygen sabe que el HW-fingerprint = "123456789" tiene el serialcode = ABCEDFGH
2) El keygen sabe que el programa tiene que tener la ruta C:\POIUYTR321\crackme.exe para que su HW-fingerprint calculado sea igual a "123456789"
3) Movemos el crackme a la ruta calculada C:\POIUYTR321\crackme.exe, se ejecuta el crackme, el HW-fingerprint calculado es "123456789" por lo que conocemos su serialcode ABCDEFGH
4) Crackme solucionado
Se entiende? Ahora a programar! :P
==========================
Resumen: No podemos hacer un keygen que genere un serialcode para cualquier HW-fingerprint, verdad? Pues la única solución es forzar al crackme a que genere un HW-fingerprint que SÍ sepamos su serialcode correcto
==========================
PD: COmo ya se dijo, éste crackme no es tan "easy" como su nombre indica...
Bueno, no es que me haya olvidado, pero todo lo que tenia lo he perdido al hacer un "revert to snapshot" de la VM.
Ha sido un accidente y bueno, no hay mucho por hacer.
Espero que los demas participantes hallan podido obtener algo!
Saludos!
boy aver que le hago a este programa
saludos flamer y parece que nadie lo a resuelto
Duda que hase la Dll o para que sirve
otra duda segenera el serial en la Dll
Hola amigos ya me dolio la cabeza y seme quemo medio cerebro intentando este crackme y solo mela llevo pensando como lo resolvere pero en fin...
Lo que tu dises antrax es que nose puede hacer un keygen ya que como dises que nose puede calcular un serial para cada HW-fingerprint bueno vamonos por partes.
Y dises que tengo que encontrar la ruta para forzar a que el programa genere un serial valido y se registre bueno...
En tendi bien o mal..... la pregunta aqui es que ruta y como genera el HW-fingerprint para la ruta o como buscarla
saludos flamer y nomas aclarame esta duda no sepuede el keygen verdad
Cita de: Flamer en 14 Septiembre 2013, 00:39 AM
Hola amigos ya me dolio la cabeza y seme quemo medio cerebro intentando este crackme y solo mela llevo pensando como lo resolvere pero en fin...
Lo que tu dises antrax es que nose puede hacer un keygen ya que como dises que nose puede calcular un serial para cada HW-fingerprint bueno vamonos por partes.
Y dises que tengo que encontrar la ruta para forzar a que el programa genere un serial valido y se registre bueno...
En tendi bien o mal..... la pregunta aqui es que ruta y como genera el HW-fingerprint para la ruta o como buscarla
saludos flamer y nomas aclarame esta duda no sepuede el keygen verdad
A ver, el programa genera un fingerprint basándose en varios valores (nombre de usuario, PC, ruta del programa). Si varías uno de esos datos, el fingerprint cambia.
Para conseguir un keygen válido primero tienes que encontrar un fingerprint que puedas registrar y luego generar una función que te calcule la ruta del ejecutable para que aparezca ese fingerprint registrable.