Hola amigos hoy veremos como resolver el crackme 3 de cruehead este es el último de la serie y está más complejo que los anteriores, pero no es la gran cosa se puede reversear, se puede solucionar.
Bueno empecemos este crackme o reto lee un archivo llamado "CRACKME3.KEY" y no es un TXT, sino un archivo con la extensión KEY, en fin este archivo tiene que tener la clave la cual se conforma de 18 dígitos y esta clave es leída cuando se está cargando el crackme y si el crackme corrió y no mostro nada quiere decir que la clave no era la correcta o no tenía los 18 dígitos en fin esta es una foto del reto.
Lo que hace el código de este reto es buscar el archivo antes mencionado en la misma ubicación o misma carpeta donde este el crackme para leerlo y mostrar el cartelito correcto si la clave es la correcta y si no lo es no muestra nada.
Bueno aquí el código en JavaScript y HTML de generación de la clave correcta o mejor dicho el generador del archivo de verificación
Aqui una foto del generador de claves
Si lo quieren probar el codigo ya saben copean el código y pegan en el bloc de notas y aguardan como genera.html y listo después al ejecutarlo solo cliquean en el botón Generar archivo key esto les dará el archivo a aguardar
Ahora lo explicaré brevemente primero creamos una variable llamada cadena la cual contiene los dígitos que contendrá la contraseña del archivo de verificación, sise fijan empieza desde O mayúscula porque la variable con la que xorearemos será la variable xo y esta empieza desde A y si la clave del archivo empieza desde A y la variable xo también desde A al xorear esta nos dará 0 y eso nos saca del código de generación del serial es por eso que la variable cadena empieza desde O para que el serial no contenga esos caracteres.
Bueno seguimos el primer ciclo crea los primeros 14 dígitos al azar y los almacena en la variable pass y también en la variable bytesPuros pero su valor ASCII
el segundo for toma los 14 dígitos del serial creado al azar en el for anterior y que fueron guardados en la variable pass y son convertidos en su valor ASCII y luego los xorea con la variable xo para después el resultado es sumado y guardado en la variable suma...Nota: esta variable xo aumenta en 1 en cada vuelta si era 65 a la siguiente será 66 y así
después que sale del ciclo el resultado de suma es xoreado con el numero 305419896, para después ser convertido en hexadecimal y aguardado en la variable cadena y el siguiente for toma el resultado que fue guardado en la variable cadena y empieza a tomar los bytes desde el reverso hasta el primer byte... Estos bytes se concatenan con los 14 primeros y como son 4 más 14 son 18 y son los que se aguardan en el archivo KEY
aquí una foto del crackme resuelto




No hay comentarios.:
Publicar un comentario