Post on 26-Jul-2015
CRACKEO BÁSICO INGENIERÍA INVERSASolución de Examen 1
Ollydbg
Bien, para hacer este tipo de crackeo hay varios tipos de programas, como
por ejemplo: OLLYDBG, W32DSM, INMMUNITY DEBUGGER, utilizaremos
OLLYDBG, ya que lo considero sencillo, pero debes de saber que en el caso
de OLLYDBG, el proceso es el mismo, bien, una vez ya tenemos nuestro
programa para debuggear(desensamblar) y nuestro crackme (programa
para crackear) comenzamos con la operación.
Lo primero que haremos será abrir el programa que vamos a crackear y
una vez nos pide el serial para activarlo ponemos lo que queramos, en este
caso yo he puesto 123456 y le damos a entrar o checar, ver imagen:
Posteriormente nos iremos al menú debug y a run como se muestra en la
siguiente imagen, nos deberá aparecer lo siguiente
Ahora nuestro debugger automáticamente nos abrirá y desensamblara
nuestro crackme o programa, bien una vez hecho esto, haremos click
derecho y se nos abrirá una ventana, ahí haremos click sobre serach for y
posteriormente sobre all referenced text strings, con esto último se nos
abrirán todas las referencias de las cadenas de texto que contiene nuestro
programa o crackme, ver imagen:
Bien, una vez hecho esto, lo que hacemos es buscar en el debugger el
mensaje de error que anteriormente nos dio el crackme, que era key is
wrong y una vez localizado hacemos un doble click sobre el, ver imagen:
Bien, una vez hecho el doble click sobre el, lo que hacemos será buscar el
mensaje que nos de paso, el ok al programa y una vez localizado, que en
este caso es key is ok lo que haremos será copiar el numero que se
muestra en la siguiente imagen:
Una vez localizado el número lo que haremos será buscar el mesaje
anterior de error y haremos un doble click sobre la zona donde pone push
seguido de crackme1 y un numero y automáticamente se nos abrirá una
ventana en la que deberemos introducir lo siguiente:
JMP SHORT 0041660
Y pulsamos doble clic sobre la instrucción y nos aparecerá una ventana
llamada assemble, de este modo lo que estamos haciendo es crear un
salto, desde el mensaje de error(key is worng) hasta el mensaje del ok
(key is ok) para que lo entendamos, con la orden JMP SHORT lo que le
estamos diciendo al programa es que cuando llegue al mensaje de error,
salte directamente al ok, de esta forma creamos el salto, ver imagen:
Creamos el salto como se muestra en la siguiente figura:
Seleccionamos la sentencia completa desde:
JMP SHORT 00401660 hasta JMP SHORT 00401665
Creamos el salto como se muestra en la siguiente figura:
En el código seleccionado damos clic con el botón derecho del mouse,
posteriormente nos vamos a edit y copy to executable
Nos aparecerá la siguiente ventana
Posteriormente salvaremos al fragmento que ensamblamos del programa
como se muestra a continuación
Posteriormente probaremos nuestro programa nuevamente para verificar
que efectivamente se guardo el cambio correctamente