CrackMe5 by tena ( Esta vez hecho en MASM32 )

Iniciado por tena, 21 Abril 2006, 02:30 AM

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

tena

Bueno amigos aqui les dejo un nuevo crackme. Esta hecho en MASM32 con la interfaz del RadASM.

Tiene proteccion antiolly.

El objetivo conseguir name/serial valido.
Y si quieres puedes hacer un tutorial.

www.freeuploader.com/view.php/152624.zip

SALUDOS y SUERTE
                                  TENA

x4uth

me da correcto para cualquier user de longitud 6 y passs de logintud 4, deduzco que te equivocaste en el salto
004011B9  JNZ SHORT Crackme5.004011D2
:/

x4uth

#2
Suponiendo q ese JNZ es un JE queda
http://www.freeuploader.com/view.php/152334.rar
y en este caso esta mas dificilito pues no se puede invertir el algoritmo y hay que usar la fuerza bruta, yo me hize un programilla

#include <stdio.h>
main()
{
char nombre[6];
char pass[10]; 
char suma[10];
char bb[10];
int j;
char k;

printf ("el nombre debe tener 6 letras de 'a' a 'z' y 'A' a 'Z', no todos los nombres tienen un serial correspondiente, prueba alternando mayusculas y minusculas\n");

START:
printf ("nombre: ");
scanf ("%s",nombre);
sprintf(pass,"0000");
sprintf(suma,"\00\00\00\00\00\00\00\00\00\00");

chekeo:
for (j=0;j<4;j++)
{
suma[j]=nombre[j]+pass[j];
}

_asm
{
  PUSHAD
  XOR EBX,EBX
  XOR EAX,EAX
  XOR EDX,EDX
NEXT:
  MOV CL,BYTE PTR DS:[EAX+suma]
  INC EAX
  MOV EDI,DWORD PTR DS:[EAX+suma]
  XOR ECX,EDI
  MOV DL,CL
  MOV DWORD PTR DS:[EBX+bb],EDX
  INC EBX
  INC EAX
  CMP EAX,04h
  JE ALL
  JMP NEXT
ALL:
  MOV AL,BYTE PTR DS:[bb]
  IMUL EAX,EDX
  CMP EAX,06EBh
  JNE SIGUE

  POPAD
  JMP FIN

}
SIGUE:
_asm POPAD
if (pass[0]=='9') {
if (pass[1]=='9') {
if (pass[2]=='9') {
if (pass[3]=='9') {
printf("no se encontro ningun pass valido para ese nombre, eliga otro\n");
goto START;
}
pass[3]++;
pass[2]='0';
pass[1]='0';
pass[0]='0';

goto chekeo;
}
pass[2]++;
pass[1]='0';
pass[0]='0';
goto chekeo;
}
pass[1]++;
pass[0]='0';
goto chekeo;

}
pass[0]++;
goto chekeo;
FIN:
pass[4]=0;
printf("pass: %s\n\nby x4uth 2006\n\n\n\nPress Ctrl+C to Exit",pass);
scanf ("%s",nombre); //para que no se nos cierre
return(0);
}



http://www.freeuploader.com/view.php/152337.rar

y en este caso mi user y pass son XAUTHS/7195

tena

uyyyy que macanasooo che. Me olvide de cambiarlo, es que estaba intentando otra cosa, y me olvide de eso...

Aqui lo subo de nuevo:

www.freeuploader.com/view.php/152624.zip

Este si esta bien.  GRACIAS X4UTH

SALUDOS

tena

Buenisima tu programilla jeje espectacularmente x4uth.

Saludos             TENA

pERICOTE

Bueno habida cuenta que el crackme esta resuelto, creo que seria excelente si x4huth hiciera un tutorial usando el Ollydbg, es decir haciendo fuerza bruta en olly, creo que así aprenderiamos algo mas de cracking, que es el objeto de este foro.
Saludos Tena buen trabajo, sigue adelante...
;D ;D ;D

x4uth

ahora mismo estoy bastante complicado, no tengo mucho tiempo, quiza en un par de semanas pero amos que es muy simple solo buscar el offset donde guarda el pass, cambiar el salto a la zona mala a un injerto nuestro y en el injerto ir incrementando hasta 9 cada byte