🐞CVE-2025-5548
Desbordamiento de búfer en FreeFloat FTP Server 1.0

🎯 Explotación de Desbordamiento de Búfer en la Pila
Este repositorio contiene la documentación y el desarrollo práctico de un proyecto de ciberseguridad centrado en la ingeniería inversa y la explotación de vulnerabilidades a nivel de memoria (Stack Buffer Overflow) en entornos Windows de 32 bits.
📌 Objetivo del Proyecto
El objetivo de este proyecto es auditar, analizar y explotar con éxito el software Freefloat FTP Server v1.00, que se sabe que carece de mitigaciones de seguridad modernas (como ASLR o DEP). A lo largo de este repositorio, se documenta todo el ciclo de vida del ataque: desde la configuración del entorno de laboratorio con herramientas profesionales, hasta el descubrimiento de vulnerabilidades (Fuzzing), y el secuestro del flujo de ejecución del programa para obtener una consola remota (Reverse Shell).
📂 Estructura del Repositorio
El proyecto se divide en dos fases principales, cada una con su propia documentación detallada y scripts correspondientes:
-
🛠️ 01 Lab_Setup
- Contiene la justificación, descarga e instrucciones de instalación de todas las herramientas utilizadas durante el proyecto (Depuradores, IDEs, Intérpretes y Software Vulnerable).
- Herramientas destacadas: Immunity Debugger, IDA, Mona.py, Python 3.
-
💥 02 Vulnerability
- Contiene el análisis de vulnerabilidad y el desarrollo progresivo del exploit.
- Incluye scripts en Python para: Fuzzing, control del registro EIP, cálculo de offsets, identificación de Bad Chars e inyección del Shellcode final.
⚙️ Metodología Aplicada
Para lograr una explotación exitosa, se siguieron las siguientes fases metodológicas:
- Configuración del Entorno: Despliegue seguro de la máquina víctima y las herramientas de análisis.
- Fuzzing (Descubrimiento): Envío de entradas anómalas al servidor FTP para provocar un fallo (Denegación de Servicio).
- Control del EIP: Creación de patrones cíclicos para calcular el tamaño exacto del búfer y sobrescribir el puntero de instrucción.
- Análisis de Memoria: Identificación de caracteres restringidos (Bad Chars) y búsqueda de instrucciones de salto (
JMP ESP).
- Explotación: Generación del payload malicioso (Shellcode) y consecución de Ejecución Remota de Código (RCE).