Page 33 - SEGURIDAD_INFORMÁTICA_2020_COLOR_Protegido
P. 33

31                                                                                32
 Seguridad informática – Prácticas de laboratorio                         Seguridad informática – Prácticas de laboratorio

 5.0  PRUEBAS DE INGENIERÍA
 INVERSA


 El proyecto que se propone en esta ocasión, se centra en el diseño de un crackme. Lo
 anterior para introducirse  al gran campo de la ingeniería inversa, el cracking de
 aplicaciones y la generación de parches.

 Ingeniería inversa

 La  ingeniería inversa  (o reversing) se define  como un proceso que consiste en
 extraer o abducir la lógica de diseño de cualquier sistema, dispositivo o software, con
 el fin de conocer su estructura, función y operación. Hoy en día, son muchas las
 aplicaciones de la ingeniería inversa, las cuales, en ocasiones suponen ventajas para
 el usuario o desarrollador.

 Requerimientos para cracking

 Uno de los elementos críticos para efectos de cracking, es sin duda un depurador o
 Debugger. Este consiste en una herramienta encargada de mostrar el código fuente
 abstracto de un programa ejecutable (por ejemplo, un archivo.exe). OllyDbg es el
 más usado, pues muestra mediante sentencias de código la información requerida
 para generar una copia depurada del programa ejecutable (llamado parche).
 Otro elemento indispensable es un ejecutable o aplicación. El cual será intervenido
 mediante el depurador con fines de exploración de código fuente.

 La GUI de OllyDbg

 La interfaz gráfica de la herramienta OllyDbg, cuenta por lo general con cuatro áreas,
 las cuales deben ser analizadas por el desarrollador, analista o cracker. En la siguiente   1.  Área de desensamblado: en esta parte se observará el código del crackme a
 infografía, se puede apreciar la interfaz de OllyDbg, en la que se señalan cada una   bajo nivel. En esta sección se verán cuatro columnas: dirección de memoria
 se las áreas que la componen:   (la cual puede llegar a variar por equipo), el código de operaciones (es lo que
                lee y entiende el equipo), la columna de código assembler y finalmente los
                comentarios.
            2.

 Cuadernillo de trabajo
   28   29   30   31   32   33   34   35   36   37   38