Sei sulla pagina 1di 26

INSTITUTO POLITÉCNICO NACIONAL

Unidad Profesional Interdisciplinaria de Ingeniería


y Ciencias Sociales y Administrativas

PRÁCTICA 5 CRACKING DE
APLICACIONES

2013602343 | Bravo Lima Víctor Hugo


2016600828 | Hipólito Tolentino Daniel
2016601350 | Piña Hernández Joshua Ricardo

Virología y Criptografía
Secuencia 4NM70
Ingeniería en Informática
Profesor Ing. Víctor Garduño Mendieta

CDMX a 26 de septiembre de 2018


PRÁCTICA 5 | CRACKING DE APLICACIONES

Introducción
La mayoría de los sistemas de validación se basan en introducir un número de serie
correcto. A la hora de introducir el número de serie, dentro del programa se realiza
una pequeña comprobación y si es correcto activa el programa (CHICOBUENO) y si
no es correcto entonces te muestra que el número de serie es incorrecto (CHICOMALO).
Sintetizando mucho, para saltar la protección de un programa tan sólo hay que
localizar la zona donde el sistema realiza la comprobación e indicar que siempre (sea
o no sea correcto el número de serie) se vaya a la zona de activación (CHICOBUENO).
Para poder analizar y modificar el programa se va a utilizar el editor hexadecimal
OllyDB.

Herramientas de trabajo
Para desarrollar la práctica, necesitaremos las siguientes herramientas de software a
la mano:
I. OllyDbg (depurador de código)
II. MalwareBytes antivirus
III. Máquina Virtual con Windows XP
PRÁCTICA 5 | CRACKING DE APLICACIONES

Índice
Consideraciones Teóricas ......................................................................................................... 4
Desarrollo.................................................................................................................................... 5
Procedimiento experimental ............................................................................................... 5
Parte 1 .................................................................................................................................... 5
Parte 2 ................................................................................................................................. 10
Observaciones......................................................................................................................... 25
Conclusiones ............................................................................................................................. 26
Bibliografía.............................................................................................................................. 26
Anexos ...................................................................................................................................... 26
I. Evidencias de actividades anteriores a la práctica ................................................. 26
PRÁCTICA 5 | CRACKING DE APLICACIONES

Consideraciones Teóricas
HACKING ÉTICO - CRACKING - CRACK - DEBUGGER - PARCHE

Para comprender el campo del Hacking ético, definiremos algunos términos:


a) Entre las diferentes definiciones sobre Hacking, tenemos que consiste en la
búsqueda permanente de conocimientos en todo lo relacionado con sistemas
informáticos, sus mecanismos de seguridad, las vulnerabilidades de los mismos,
la forma de aprovechar estas vulnerabilidades y los mecanismos para
protegerse de aquellos que saben hacerlo. “Actualmente, el hacking es
concebido y reconocido textualmente con un enfoque defensivo, de allí el término
Hacking ético”.
El hacking ético, por definición, consiste en una técnica de análisis y planteamiento de
alternativas de defensa contra posibles ataques. Para conocer los modos de defensa
posible, a menudo se recurre a la ingeniería inversa (concepto que analizaremos más
adelante en este capítulo).
b) Cracking: suele haber dos definiciones de este término, las cuales se hallan en
función del enfoque (seguridad informática o de crackeo de programas).
En el caso de seguridad informática, consiste en el permanente intento de
violación de seguridad de los sistemas informáticos, con fines justificados o no.
En el caso de crackeo de programas, la definición es la de creador de cracks
o devastadores.
c) Crack: son programas destinados a la desprotección de aplicaciones o
herramientas de software comerciales. Lo anterior con la finalidad de que
puedan ser usados sin límite y de manera gratuita.
d) Crackme: a menudo abreviado como cm, consiste en un pequeño programa
diseñado para hacer pruebas de ingeniería inversa. El uso de cm, permiten al
usuario final desarrollar habilidades sobre este rubro.
e) Debugger (OllyDebugger): es una herramienta encargada de mostrar el
código fuente abstracto de un programa ejecutable (por ejemplo, un
archivo.exe). OllyDbg, muestra mediante sentencias de código la información
requerida para generar una copia depurada del programa ejecutable
(llamado parche).
f) Parche: copia previamente intervenida (con fines de corrección, inspección,
actualización, manipulación, inyección, etc.) de un programa que ha sido
sometido a un proceso de depuración.
PRÁCTICA 5 | CRACKING DE APLICACIONES

Desarrollo
Procedimiento experimental
I. Se mantuvo guardado tanto OllyDbg como MalwareBytes en una carpeta
sobre el directorio raíz de su equipo (C:/>Práctica_cracking/).
II. Ejecute MalwareBytes (archivo MalwareBytes.exe) y pruebe su funcionamiento.
Para ello, es necesario dar clic sobre el botón ACTIVAR para conocer los
campos de protección o seguridad del software. Allí mismo pruebe colocando
varias claves sobre el campo: Clave de producto. Como resultado, tendremos
mensajes de error como: “Acceso no autorizado”.
<<<Procedamos entonces a burlar el módulo de seguridad del antivirus para
activar la licencia de uso, mediante el uso de la ingeniería inversa>>>
III. Ejecute OllyDbg y proceda a abrir el archivo ejecutable de MalwareBytes
almacenado previamente en la carpeta origen
(C:/>Práctica_cracking/MalwareBytes).
IV. Dar clic en el botón Play para ejecutar el antivirus.
V. Ubique en el área de desensamblado y proceda a revisar el código.
VI. Intente saltar la seguridad del antivirus.

Parte 1
1. Tenemos que iniciar la Máquina Virtual con Windows XP.
PRÁCTICA 5 | CRACKING DE APLICACIONES

2. Ya que tenemos la Máquina Virtual, tenemos que descargar el archivo


ejecutable “MalwareBytes” y el zip “odbg110” (archivo que contiene
OllyDbg).

3. Una vez descargados, ahora tenemos que crear una carpeta en la raíz del
Sistema. Como se muestra a continuación.
PRÁCTICA 5 | CRACKING DE APLICACIONES
PRÁCTICA 5 | CRACKING DE APLICACIONES

4. Ahora copiaremos la carpeta de OllyDbg de los archivos descargados a la


carpeta que acabamos de crear en la raíz.

5. Ya copiada la Carpeta antes mencionada, ahora procedemos a


descomprimirla como se muestra a continuación.
PRÁCTICA 5 | CRACKING DE APLICACIONES

6. Solo damos Clic derecho/extraer todo aquí/y Finalizar.

7. Obtendremos los siguientes archivos ya descomprimida la carpeta.


PRÁCTICA 5 | CRACKING DE APLICACIONES

Parte 2
8. Ahora Procederemos a Instalar el software “MalwareBytes”, dando doble clic
en el segundo archivo descargado.

9. Clic en español y Aceptar.


PRÁCTICA 5 | CRACKING DE APLICACIONES

10. Clic en Siguiente.

11. Clic en Aceptar y Siguiente.


PRÁCTICA 5 | CRACKING DE APLICACIONES

12. Clic en Siguiente.

13. Siguiente.
PRÁCTICA 5 | CRACKING DE APLICACIONES

14. Siguiente.

15. Siguiente.
PRÁCTICA 5 | CRACKING DE APLICACIONES

16. Clic en Instalar.

17. Clic en Finalizar.


PRÁCTICA 5 | CRACKING DE APLICACIONES

18. Ahora procedemos a ejecutar el archivo que obtuvimos de la carpeta


anteriormente descomprimida (“OllyDbg”) y damos clic en “SÍ”.

19. Damos Clic en File/ Open / Buscamos el ejecutable que fue creado por el
Programa instalado anteriormente y abrimos.
PRÁCTICA 5 | CRACKING DE APLICACIONES

20. Ahora daremos Clic en el Botón de Play.

21. Pulsamos en el Botón “No”.


PRÁCTICA 5 | CRACKING DE APLICACIONES

22. Daremos Clic en Activar y llenaremos los Campos mostrados con los datos que
deseemos hasta obtener el error de la imagen siguiente.

23. Llenamos los campos.


PRÁCTICA 5 | CRACKING DE APLICACIONES

24. Listo, tenemos el error buscado.

25. Vamos al Programa OllyDBG y pulsamos el Botón de Pausa.


PRÁCTICA 5 | CRACKING DE APLICACIONES

26. Ahora el Botón “K” y buscamos el error de ventana.

27. Pulsamos clic derecho/Follow address in Stack.


PRÁCTICA 5 | CRACKING DE APLICACIONES

28. Ahora solo presionamos “ENTER”.

29. Y buscaremos la línea con los siguientes parámetros:


0043C366 . 0F84 6030000 JE mbam.0043C6D2
PRÁCTICA 5 | CRACKING DE APLICACIONES

30. Ya encontrada la línea, la negaremos con un NOP (dando doble clic sobre la
línea).

31. Seleccionamos todos los NOP creados y damos clic derecho y seleccionamos /
copy to executable/ all modifications
PRÁCTICA 5 | CRACKING DE APLICACIONES

32. Cerramos esta ventana y guardaremos el archivo generado.

33. Damos en “SI” y guardamos.


PRÁCTICA 5 | CRACKING DE APLICACIONES

34. Lo guardamos en la ruta que fue instalado el Programa en la PC. Guardamos


con el nombre que queramos.

35. Ahora vamos a ejecutar el archivo que guardamos hace un momento.


PRÁCTICA 5 | CRACKING DE APLICACIONES

36. Seguimos los pasos anteriores hasta llegar al momento de “Activar el


Programa”.
PRÁCTICA 5 | CRACKING DE APLICACIONES

37. Listo, tenemos nuestro programa activado.

Observaciones
PRÁCTICA 5 | CRACKING DE APLICACIONES

Conclusiones
Con la práctica realizada, observamos cómo se puede crackear una aplicación, en
este caso, un antivirus. Esto hace notar que se puede burlar la licencia de un programa
mediante el uso de un debugger, de esta forma, dicha herramienta nos ayuda a
mostrar mediante sentencias de código la información requerida para generar un
parche, que es simplemente una copia depurada del programa que se crackea. Con
todo esto se hicieron presente las diferentes teorías que se presentaron al inicio de
este reporte como el hacking, la ingeniería inversa y el cracking; siendo estos nuestros
principales objetos de conocimiento.

Bibliografía

Anexos
I. Evidencias de actividades anteriores a la práctica
crackme_1
crackme_2

Potrebbero piacerti anche