Pues eso que me estoy volviendo loco xq se en que parte del codigo esta el serial
(http://www.subir-imagenes.com/subir_fotos_e_imagenes/d2be6037c1.bmp) (http://www.subir-imagenes.com)
aki dejo el crackme:
http://www.4shared.com/file/9014580/c2608cf0/BJASM10.html
pes estas igual que yo que si quiero lo crackeo cambiando algunos saltos pero no doy con la forma de sacar el serial y eso que se donde compara el mio con el original.
Leeros el tutorial de OLLY de ricardo narvaja, os enseña a muchas cosas, entre ellas a moveros por el olly y comprender el ensamblador... cosa fundamental
Veamos.. una vez desempacado (OEP 0040102C), miro lo que hace el programa al introducir un serial malo: mandarte un mensaje con esto: Sorry, try again!, esto aparece en las strings, asi que doble click en ella y llegamos al lugar donde se mandan los mensajitos buenos o malos, y si subimos un poco, ya sabemos donde genera la clave :P, yyyyyy ahora me voy a tomar un descanso, luego intento sacalre la clave :P
ya me he bajado los 800 tutoriales re ricardo jajaja y hoy he empezado con la introduccion con olly desde 0 y creo que ya me voy manejando mejor jeje son cojonudos!!
Buenas tardes, yo estoy con el y no le veo la clave, a ver si alguien con mas experiencia da un poco de luz al asunto.
Un saludo.
El crackme es BJASM10
Si es este,
https://www.autistici.org/loa/web/iniziative/corsi/reversing/0110/
la rutina
comienza a verificar si escribiste 8 caracteres
004011ED | 83F | cmp ecx,8
004011F0 | 75 | jne bjasm10.401230
004011F2 | BB | mov ebx,bjasm10.40309C
004011F7 | 8B1 | mov ebx,dword ptr ds:[ebx]
004011F9 | B9 | mov ecx,bjasm10.4030F4
004011FE | 8B0 | mov ecx,dword ptr ds:[ecx]
00401200 | C1C | rol ecx,8
00401203 | C1C | ror ebx,8
00401206 | 0FA | imul ebx,ecx
00401209 | C1E | shl ebx,2
0040120C | B9 | mov ecx,bjasm10.4030F4
00401211 | 8B4 | mov ecx,dword ptr ds:[ecx+4]
00401214 | BA | mov edx,bjasm10.40309C
00401219 | 8B1 | mov edx,dword ptr ds:[edx]
0040121B | 03C | add ecx,edx
0040121D | C1E | shr ecx,2
00401220 | 68 | push bjasm10.4030F4
00401225 | 68 | push bjasm10.4030A3
Saludos.
hola:
basicamente lo que hace es comprobar que el serial tenga 8 digitos, después toma los primeros 4 y los rota a la izquierda(valor1), tiene una cadena fija "Bjanes" de la cual toma los primeros 4 caracteres y los rota a la derecha(valor 2). multiplica esos valores y por último desplaza a la derecha el resultado, esto se guarda digamos como comprobación1,ahora toma los otros cuatro digitos(valor3) y los primeros 4 caracteres de la cadena fija(valor4), los suma y al resultado lo desplaza a la derecha, este sería la comprobación2, por último jace un xor entre comprobacion1 y comprobación 2 y sino son iguales decide el salto a chico malo.
El serial no está en crackme, hay que buscarlo, y el tema de los desplazamientos es lo que lo complica, seguramente alqgien que sepa mucho de matemáticas o criptografía conozca una formula para resolverlo, en mi caso sería por fuerza bruta.
Saludos.
Lo más que hice fue organizar
de azul, simplificar a verde, saludos.
mov ebx,bjasm10.40309C
mov ebx,dword ptr ds:[ebx]
ror ebx,8 -------------------mov ebx, 0x426E616A
mov ecx,bjasm10.4030F4
mov ecx,dword ptr ds:[ecx]
rol ecx,8
imul ebx,ecx
shl ebx,2
-------------------------------------------------
mov edx,bjasm10.40309C
mov edx,dword ptr ds:[edx]---mov edx, 0x6E616A42
mov ecx,bjasm10.4030F4
mov ecx,dword ptr ds:[ecx+4]
add ecx,edx
shr ecx,2
*****************************EBX
mov ecx,bjasm10.4030F4
mov ecx,dword ptr ds:[ecx]
rol ecx,8
imul 0x426E616A,ecx
shl ebx,2
*****************************ECX
mov ecx,bjasm10.4030F4
mov ecx,dword ptr ds:[ecx+4]
add ecx,0x6E616A42
shr ecx,2
********************************
hola:
bueno después de hacer unas pruebas el serial fue facil:
0124>.91
seguramente puede haber otros pero no me voy a poner a buscarlo.
Cita de: tincopasan en 9 Julio 2020, 04:22 AM
hola:
bueno después de hacer unas pruebas el serial fue facil:
0124>.91
seguramente puede haber otros pero no me voy a poner a buscarlo.
;-)
;-)
con este post ya se ve que quedó solucionado
Saludos!
Apuromafo
Cita de: tincopasan en 9 Julio 2020, 04:22 AM
hola:
bueno después de hacer unas pruebas el serial fue facil:
0124>.91
seguramente puede haber otros pero no me voy a poner a buscarlo.
Como lo has sacado, con fuerza bruta?
Yo lo que tengo hasta ahora es que la password debe tener 8 digitos, y que coge los primeros 4 bytes del serial y le realiza x operaciones, con el resto del serial hace otras x operaciones y al final compara los resultados de las dos partes, pero no he podido realizar la inversion del proceso. Es decir si introduces una password falsa al resultado no le puedes hacer las operaciones inversas ya que operaciones como shl o shr eliminan los bits que se han movido por lo que esa informacion deja de existir para el resultado. Alguna pista para continuar?
Gracias compis :P