
Artículo · Ingeniería Inversa
Resolver el reto Engendrito con el decompilador de DELPHI
Introducción
En este pequeño tutorial se procederá a realizar la solución de un Crackmes creado por AbelJM de Team PeruCrackers, de lo cual se usará dos herramientas (x32dbg y Delphi Decompiler), para poder encontrar el BreakPoint correcto y así realizar el análisis y obtener la Bandera o Flag.
Información de la víctima
| Victima |
AbelJM |
|
URL |
https://mega.nz/#!pdwS1YoL!pEL9q2NMYNgPa1XWcKIkYNLzaHU86QZEszcCtZkgAUQ |
|
Protección |
Ninguna |
|
Dificultad |
Newbie |
|
Herramientas |
RDG Packer Detector, x32DBG y Delphi Decompiler (https://mega.nz/#!sZwmiLaK!AwYe21TLhHyt1s-7SNk5Vljk5mIZRyVUmXFPLwgl0NI) |
|
Objetivos |
Cazar contraseña |
|
Reverser |
Lior |
|
Lugar / Fecha |
22/02/18 |
|
Teams |
CrackSLatinoS – PeruCrackers – EntreAmigos CLS |
Realizando el ataque
Lo primero que vamos a realizar es obtener información de la víctima, ejecutando RDG Packer Detector, como sabrán es una herramienta obtener información del tipo de Lenguaje y si presenta alguna medida de seguridad. Ver Figura 1.
Fig. 1 Desarrollado con Borland Delphi
Vamos a detectar que al agregar nuestras credenciales, y realizar clic en el botón Entrar nos muestra el BAD BOY, ver Fig. 2
Fig. 2 Intentando registrarse
Vamos a depurar y buscar las cadenas de textos. Ver Fig. 3
Fig. 3 Pasos para encontrar la cadena de texto.
Ahora que podemos hacer para poder encontrar la clave, de lo cual usaremos una herramienta cabe recalcar que tan solo funciona en software desarrollado por Delphi, así que ejecutemos nuestra tools Delphi Decompiler, clic en File -> Open. Ver Fig. 5.
Vamos a abrir nuestro reto Engendrito V1.exe Ver Fig. 6
Fig. 6 Abriendo Engendrito V1.exe
Nos mostrara que se ejecuta nuestro crackme y nos aparecer una ventana donde indica que cargó por completo, clic en Aceptar. Ver fig. 7
Vamos a buscar el comando CALL 004672E8, Clic derecho -> Buscar en -> Módulo actual -> Comando y buscamos nuestra función. Ver fig. 10
Encontraremos nuestra función y en este caso agregue un BreakPoint y luego Play. Fig. 11
Ingresamos las credenciales en este ejemplo. Lior – 1234567890 y veremos que se detiene en nuestro BreakPoint de lo cual vamos a tracear con F7, para ingresar en ese CALL. Ver Fig. 12
Fig. 12 Intentado registrar.
Llegamos al primer salto y vemos nuestra clave ingresada “1234567890” comparando con “soselputoamo”, y luego salta, podemos intuir que si salta es debido a que no es correcto y nos mostrara el BAD BOY. Ver Fig. 14.
Conclusión
En este caso se cazo la contraseña del crackmes, sin embargo a simple vista no podemos encontrar las cadenas de texto.
¿Quieres aprender estas técnicas en profundidad?
Continúa tu ruta con Pentesting .

Escrito por
Rafael PeruCrackersEstudiante de la ingenieria Inversa usando las herramientas de Ollydbg y el actual IDA PRO, actualmente me encuentro investigando sobre Creacion de Exploit, con animo de ayudar a las personas que les interesa el mundo del reversing, :)


