Guía paso a paso para explotar un desbordamiento de búfer en FreeFloat FTP Server mediante fuzzing con Python, Immunity Debugger con mona.py e IDA Free para el análisis de binarios y el desarrollo de payloads.
Plataforma objetivo: Windows
Esta guía detalla todas las herramientas necesarias para realizar el análisis de vulnerabilidades y el fuzzing del binario. Sigue los pasos en orden para asegurarte de que todo esté configurado correctamente.
Descarga: python.org/downloads/windows
Python 3 es el lenguaje que utilizaremos para escribir scripts de fuzzing. Su simplicidad y su rico ecosistema lo hacen ideal para automatizar el envío de payloads al binario objetivo, manejar conexiones de red y procesar respuestas.
Instalación: Descarga el instalador .exe desde el enlace y ejecútalo. Durante la instalación, asegúrate de marcar ✅ "Add Python to PATH" — de lo contrario, no podrás invocar python desde la terminal.
Descarga:
Immunity Debugger es un depurador a nivel de proceso orientado específicamente al análisis de seguridad y a la investigación de exploits. Te permite inspeccionar registros, memoria, la pila y el montón en tiempo real mientras el programa se está ejecutando — exactamente lo que necesitamos para identificar y verificar un desbordamiento de búfer.
⚠️ Nota: Immunity Debugger ha sido descontinuado y su sitio web oficial ya no está disponible. Sin embargo, sigue siendo ampliamente utilizado en la comunidad de seguridad y en entornos académicos debido a su integración con el plugin mona.py, su bajo consumo de recursos y su interfaz intuitiva para el análisis de exploits en sistemas Windows de 32 bits. El repositorio de GitHub referenciado contiene el binario del instalador tal y como se distribuyó originalmente.
Instalación: Clona el repositorio. El ejecutable se encuentra en ImmunityDebugger\1.85\ImmunityDebugger.exe y no requiere instalación.

Descarga: python.org/download/releases/2.7
El motor de scripting de Immunity Debugger está construido sobre Python 2.7, lo que convierte a esta versión en un requisito estricto para que la herramienta funcione correctamente — especialmente para ejecutar el plugin mona.
ℹ️ Python 2.7 y Python 3 pueden coexistir en el mismo sistema sin problemas. Solo asegúrate de que Python 3 siga siendo la versión principal en tu PATH.
Instalación: Descarga y ejecuta el instalador. No es necesario añadirlo al PATH si Python 3 ya está configurado.

Descarga: github.com/corelan/mona
mona.py es el plugin insignia de Immunity Debugger, desarrollado por el Corelan Team. Automatiza las partes más tediosas del desarrollo de exploits:
pattern_create, pattern_offset)JMP ESPInstalación:
mona.py en el directorio de comandos de Immunity:ImmunityDebugger\1.85\PyCommands\mona.py
Una vez copiado, puedes invocarlo desde la barra de comandos de Immunity con:
!mona help

Descarga: code.visualstudio.com
🟡 Opcional — pero altamente recomendado.
VS Code es el editor donde escribiremos nuestros scripts de fuzzing en Python. Proporciona resaltado de sintaxis, autocompletado inteligente, terminal integrada y soporte de extensiones que mejora significativamente la eficiencia del flujo de trabajo.
Extensión recomendada: Python — Microsoft
Proporciona IntelliSense, linting, depuración integrada y selección del intérprete de Python directamente dentro de VS Code. Una vez instalada, asegúrate de seleccionar el intérprete correcto (Python 3) desde la barra inferior del editor.

Descarga: hex-rays.com → sección Downloads → IDA Free
IDA (Interactive DisAssembler) es el estándar de la industria para la ingeniería inversa de binarios. La versión gratuita (IDA Free) es más que suficiente para este análisis: te permite desensamblar el ejecutable objetivo, navegar por sus funciones, identificar llamadas peligrosas como strcpy o gets, y comprender el flujo del programa sin acceso al código fuente.
🔐 Licencia: La versión individual y no comercial es completamente gratuita. Solo requiere registrarse con un correo electrónico válido. El instalador y la licencia se descargan desde el Portal de Clientes de Hex-Rays.
Instalación:
Descarga el instalador .exe desde el Portal de Clientes y ejecútalo siguiendo los pasos del asistente.
Después de la instalación, el asistente indicará que debes colocar el archivo de licencia (.hexlic) en la siguiente ruta:
%APPDATA%\Hex-Rays\IDA Pro\
.hexlic desde la sección Licenses del Portal de Clientes y cópialo en esa ubicación. La próxima vez que inicies IDA, la licencia se activará automáticamente. ✅El binario objetivo es FreeFloat FTP Server v1.0, un servidor FTP ligero para Windows. Es un software con vulnerabilidades conocidas y bien documentadas en la comunidad de seguridad, lo que lo convierte en un objetivo clásico para practicar técnicas de desbordamiento de búfer en entornos controlados.
📦 El ejecutable está disponible en este mismo repositorio: FreeFloatFtpServer1.0.zip
Extrae el archivo zip para obtener Win32/FTPServer.exe, que es el binario que utilizaremos durante todo el análisis.
Continúa en 02 Vulnerability →
¡Feliz hacking! 🎯