Crack Basico

6
En vista de que está de moda hacer crackmes, voy a hacer un pequeño manual de cracking básico. Dado que mis conocimientos no son muy extensos, solo me limitaré a saltarme la seguridad del programa, no voy a explicar cómo hacer keygens. El objetivo de este tutorial es poder crackear programas básicos, tales como muchos de los crackmes en esta sección propuestos. También es objetivo poder hacer mejores crackmes, puesto que lo que se ha estado intentando ha sido crear algoritmos aleatorios variables con varios motores, lo cual a la hora de saltarse la seguridad es, en el fondo, una pérdida de tiempo. Empecemos por lo esencial, debéis descargaros el Ollydebugger. Es una herramienta muy útil y sencilla que sirve para desensamblar el código bruto de un programa , es decir, cambiar los unos y ceros por algo -aunque sea poco- legible. No voy a poneros la URL porque está por todas partes. Usad Google (Bing no ). Algo básico que deberíais saber es cómo funciona un programa. Hay 2 tipos de programas (simplificando mucho): -Compilados -Interpretados Los interpretados son Perl, Python, Batch, Bash... es decir, los que se pueden programar usualmente con un bloc de notas.

description

mejor libro para crack

Transcript of Crack Basico

Page 1: Crack Basico

 En vista de que está de moda hacer crackmes, voy a hacer un pequeño manual de cracking básico.

 Dado que mis conocimientos no son muy extensos, solo me limitaré a saltarme la seguridad del programa, no voy a explicar cómo hacer keygens.

 El objetivo de este tutorial es poder crackear programas básicos, tales como muchos de los crackmes en esta sección propuestos.

 También es objetivo poder hacer mejores crackmes, puesto que lo que se ha estado intentando ha sido crear algoritmos aleatorios variables con varios motores, lo cual a la hora de saltarse la seguridad es, en el fondo, una pérdida de tiempo.

 Empecemos por lo esencial, debéis descargaros el Ollydebugger. Es una herramienta muy útil y sencilla que sirve para desensamblar el código bruto de un programa, es decir, cambiar los unos y ceros por algo -aunque sea poco- legible.

 No voy a poneros la URL porque está por todas partes. Usad Google (Bing no ).

 Algo básico que deberíais saber es cómo funciona un programa.

 Hay 2 tipos de programas (simplificando mucho):

 -Compilados

 -Interpretados

 Los interpretados son Perl, Python, Batch, Bash... es decir, los que se pueden programar usualmente con un bloc de notas.

 Los compilados son C/C++/C#, Visual Basic, Delphi, Pascal, etc.

 La diferencia es que los interpretados cuando se ejecutan, son interpretados por un intérprete (valga la redundancia), es decir, hay un programa que va leyendo el código fuente línea a línea y ejecutándolo.

 Los Compilados pasan por un programa llamado compilador que lo que hace es pasar del código fuente a código en Assembler (Ensamblador, ASM) y luego a Bits (1 y 0).

 Es decir:

   - Interpretados: Código fuente = PROGRAMA.bat/.pl/.py -> Ejecutar -> Intérprete = Acciones

   - Compilados: Código fuente -> Compilador (C++ -> ASM -> Bits) ->

Page 2: Crack Basico

PROGRAMA.exe -> Ejecutar = Acciones

 Dado que para ejecutar un programa interpretado solo hay que coger el archivo y ver su código fuente en un lector de texto plano (notepad), lo único que se necesita para crackearlos es saber y conocer el idioma en el que se hicieron.

 Para Crackear un programa compilado, lo que hay que hacer es coger un desensamblador, como el ollydebugger, que lo que hace es pasar de Bits a ASM, pudiendo modificar las instrucciones a ejecutar por el programa.

 Espero no haberos liado, a veces me lío yo solo hablando (o escribiendo).

 Ahora pongamos un pequeño crackme (el de Drinky94) :

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Os descargáis el programa. Está hecho en Visual Basic.

 Al darle a compilar el código fuente, lo que hace es pasar a ensamblador y luego a código binario.

 Ollydbg descompone el código binario en funciones y lo pasa a ensamblador. Este fue el primer lenguaje que se usó para programar que no fuese el código binario, y, por tanto, es muy primitivo y complejo. Está en un punto intermedio entre el lenguaje máquina y el humano.

 Abrimos el ollydbg y cargamos el crackme.

 Os saldrá algo como esto (con otros colores, es que esta gama me gusta):

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Este crackme usa un motor variable para escoger al azar la contraseña que es válida. Es decir, nos va a ser imposible (al menos con este manual) hallar una contraseña válida.

 Lo que hay que hacer entonces es que cualquier contraseña sea válida.

 Le damos a F9 para ejecutar el programa, y probamos una contraseña cualquiera (clica en las imágenes para verlas más grande, luego en la página que salga le das a click derecho -> ver imágen).

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Ahora vemos que pone "sigue provando jajajajaj". Lo más destacable de la frase es que probando es con b, no con v.

 Le damos a aceptar. Cogemos el ollydbg y le damos a CTRL+F2 (gracias, mr. blood ) para que el crackme vuelva a cargarse (el código ASM habrá cambiado). Si os sale

Page 3: Crack Basico

algún mensaje le dais aceptar y listo.

 Ahora el programa se habrá cargado como si antes no le hubiésemos dado al F9.

 Damos botón derecho -> Search for -> All referenced text strings

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 En la ventanita que se acabará de abrir deberéis buscar "sigue provando jajajaj", es decir, el mensaje de error. Cuando lo hayáis encontrado, solo deberéis darle doble clic.

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Ahora el Ollydbg se ha desplazado hasta la parte en la que sale "sigue provando jajaajja".

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Ahora lentamente vais probando hacia arriba hasta que en la parte señalada ponga "Jump from" y un número en Hexadecimal.

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 En mi caso el número hexadecimal es 00403C67. Así que lo seguimos: pulsais Control+G y escribís el número.

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Ahora veréis que os habéis movido hasta un sitio donde sale enmarcado y seleccionado directamente una instrucción en concreto, un JE.

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 El JE es una instrucción que indica que si el flag Zero es 1, salte. Es decir, es el momento en el que en código fuente sería equivalente a un IF ELSE.

 Si JE hace referencia a "sigue provando jajajaja" entonces su contrario (JNE o JNZ, como prefiráis) hará referencia al mensaje bueno.

 Así que podéis hacer dos cosas: cambiar ese JE por JNZ o eliminar el JE, es decir, nunca se hace la comprobación y, por tanto, sale el mensaje bueno. Para esto lo que hay que hacer es cambiar la función por NOPs (lo que se conoce por nopear). Para esto le dais a la función doble click y os saldrá una ventanita. Allí ponéis NOP y donde pone "Fill with NOPs" ponéis el simbolito de que sí. Y le dais a Assemble.

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Ahora os habrán salido en vez del JE muchos Nops, es normal que salga más de 1 nop.

Page 4: Crack Basico

 Ahora le dais al F9, probáis cualquier contraseña y...

Usted no se pueden ver los links Registrate Ahora   �  Logeate

 Yupi!! Hemos crackeado el crackme de Drinky94! Chúpate esa, Drinky!!

 Por cierto, no sé exactamente por qué, pero si crackeáis así este crackme, el mensajito bueno os aparecerá una y otra vez, como un bucle infinito. Deberéis cerrar el programa con Ctrl+Alt+Supr.

 Ahora solo tenéis que guardar los cambios, pero no me acuerdo cómo se hace XD.

 SAlu2, y espero que lo podáis entender, suelo no ser claro.

PD: esto ha sido más bien una forma mecánica de que crackeéis, lo más probable es que no podáis avanzar. Para poder entender y aprender realmente el porqué de lo que he hecho, buscad en google "Manual de cracking por Ricardo Narvaja", ahí os vienen incluídos también el ollydbg y varios crackmes. Cuidado con los crackmes, igual llevan regalito vírico.

 Postead cualquier duda, sugerencia, crítica, abucheo, etcétera, etcétera.« última modificación: 29 Noviembre 2009, 02:00:31 pm por .:MYTO:. »

En línea Pfff ya casi no entro al foro.

 Ojalá no pudiese dormir.