Autor
|
Tema: CrackMe5 by tena ( Esta vez hecho en MASM32 ) (Leído 2,640 veces)
|
tena
Desconectado
Mensajes: 668
|
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.zipSALUDOS y SUERTE TENA
|
|
« Última modificación: 22 Abril 2006, 05:28 am por tena »
|
En línea
|
|
|
|
x4uth
Desconectado
Mensajes: 88
|
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 :/
|
|
|
En línea
|
|
|
|
x4uth
Desconectado
Mensajes: 88
|
Suponiendo q ese JNZ es un JE queda http://www.freeuploader.com/view.php/152334.rary 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.rary en este caso mi user y pass son XAUTHS/7195
|
|
« Última modificación: 21 Abril 2006, 18:28 pm por x4uth »
|
En línea
|
|
|
|
tena
Desconectado
Mensajes: 668
|
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.zipEste si esta bien. GRACIAS X4UTH SALUDOS
|
|
|
En línea
|
|
|
|
tena
Desconectado
Mensajes: 668
|
Buenisima tu programilla jeje espectacularmente x4uth.
Saludos TENA
|
|
|
En línea
|
|
|
|
pERICOTE
Desconectado
Mensajes: 131
|
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...
|
|
|
En línea
|
|
|
|
x4uth
Desconectado
Mensajes: 88
|
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
|
|
|
En línea
|
|
|
|
|
|