La máquina Brooklyn Nine Nine es una máquina de dificultad fácil de TryHackMe.

Resumen de conceptos trabajados:
| Escaneo y enumeración de puertos y servicios (Nmap) Acceso anónimo por FTP (Anonymous FTP Access) Enumeración de usuarios del sistema Fuerza bruta de credenciales con Hydra (SSH) Enumeración de privilegios con sudo -lEscalada de privilegios mediante abuso de binarios sudo (GTFOBins – less) |
Al final del write up te cuento un resumen de toda la máquina.
Si es tu primera máquina en TryHackMe y no sabes cómo conectarte a la máquina del laboratorio, te recomiendo que visites este post donde te cuento paso a paso cómo introducirte en esta plataforma.
Cuando inicies siempre una máquina de TryHackMe, recuerda securizarte en la red, para ello te cuento cómo lo hago yo siguiendo estos sencillos pasos.

Estructura del contenido
ESCANEO Y ENUMERACIÓN DE PUERTOS Y SERVICIOS
Comenzamos primero viendo si la máquina está activa y podemos conectarnos a ella, y después continuamos con el descubrimiento de puertos para luego hacer un escaneo de los servicios y versiones que corren para esos puertos.


Realizando la primera fase del escaneo, se detectan los puertos abiertos: 80 http, 21 ftp y 22 ssh. Esta máquina corre bajo un SEO Linux por el TTL de 62 que nos muestra arriba (64 sin nodos intermediarios de ida y vuelta).
Estos son los servicios y versiones que corren bajo esos puertos abiertos.
└─# nmap -p- --open -sS -sC -sV --min-rate 5000 -vvv -n -Pn 10.64.138.228

Lo más interesante que veo de primeras es que el puerto ftp 21 permite el login con usuario anonymous, por lo que si tenemos acceso por aquí al servidor, podríamos subirnos un archivo malicioso y obtener una reverse shell para ganar acceso al sistema…
La otra cosa que veo es a través del puerto 22 ssh donde se expone una llave privada por rsa que podríamos manipular para
En principio las versiones de Apache y SSH no parecen vulnerables, por lo que no creo que la intrusión esté por ahí…quizás más por la parte de subida de ficheros por ftp.
Aún así, analizamos la web y vemos en el código fuente un mensaje de «Have you ever heard of steganography?». Quizás otra vía de entrada esté en analizar la imagen de background de la web en busca de credenciales.

ACCESO POR FTP ANONYMOUS
Visto esto, vamos a seguir viendo la parte del puerto 21 por ftp, para intentar acceder como el usuario anonymous y probar a ver ficheros y subir maliciosos…

Como no tenemos acceso de lectura, lo que hacemos es descargarnos ese recurso con get a nuestra máquina (se alojará en el mismo directorio o ruta donde lo hayamos ejecutado – en nuestro caso /home/kali/THM/Brooklyn).
Y una vez descargado en nuestra máquina, lo que hacemos es abrirlo con cat, y nos muestra un mensaje:

ENUMERACIÓN DE USUARIOS DEL SISTEMA
Se nos mencionan dos potenciales usuarios: Amy y Jake.
Con estos dos usuarios potenciales podemos aplicar fuerza fruta con Hydra por ejemplo al puerto 22 y ver si para nuestro diccionario conseguimos sus credenciales.
FUERZA BRUTA DE CREDENCIALES CON HYDRA
Comenzamos por el usuario Jake que parece que existe ya que se le advierte de cambiar la contraseña, por lo que aplicamos fuerza bruta con Hydra usando este comando:
hydra -l jake -P /usr/share/wordlists/rockyou.txt ssh://10.64.138.228

Y efectivamente conseguimos la contraseña para ese usuario: jake, 987654321 .
ENUMERACIÓN DE PRIVILEGIOS CON SUDO -L
Ahora probamos a acceder con estas credenciales por el puerto 22 ssh para acceder como el usuario jake y ver sus permisos:

Accedemos y vemos los privilegios que tiene y es que puede abusar del binario less para acceder a root sin contraseña.
Sin embargo ojo porque he visto que además de jake hay dos usuarios más, que son amy (que vimos antes en el txt) y holt. Con los que podríamos aplicar fuerza bruta también para acceder…

Si investigamos entre las carpetas de esos usuarios, vemos que dentro del usuario holt nos encontramos la primera user flag:

Ahora seguimos analizando el usuario jake, que como vimos tenía permisos de abuso del binario less como sudo.
ESCALADA DE PRIVILEGIOS MEDIANTE ABUSO DE BINARIOS
Analizamos el acceso como sudo a través de GTFObins https://gtfobins.linuxsec.org/gtfobins/less/#sudo y vemos este comando:
sudo less /etc/profile
!/bin/sh

Por tanto, vamos a seguir las instrucciones…
Ponemos «sudo less /etc/jake» y después ponemos «!/bin/sh» …y efectivamente ahora somos root:

Y ahora si nos movemos hasta el directorio cd /root , podremos visualizar la flag de root:

RESUMEN DE LA MÁQUINA BROOKLYN NINE NINE DE TRY HACK ME
| Para resolver la máquina Brooklyn Nine Nine comenzamos con una fase básica de reconocimiento. Verificamos que la máquina estaba activa y realizamos un escaneo de puertos, donde descubrimos que tenía abiertos FTP (21), SSH (22) y HTTP (80). El punto clave fue detectar que el servicio FTP permitía acceso anónimo, lo que nos abrió la puerta a seguir enumerando información útil. Accediendo por FTP como anonymous, descargamos un archivo que contenía un mensaje oculto donde se mencionaban dos posibles usuarios del sistema: Amy y Jake. Con esta información, aplicamos fuerza bruta con Hydra contra el servicio SSH y conseguimos obtener la contraseña del usuario Jake. Una vez dentro por SSH, comenzamos a enumerar el sistema, localizando la user flag en el directorio de otro usuario y revisando los privilegios del usuario Jake mediante sudo -l.Finalmente, detectamos que el usuario Jake podía ejecutar el binario less como root sin necesidad de contraseña. Consultando GTFOBins, abusamos de ese permiso para ejecutar una shell como root directamente desde less. Con ello conseguimos acceso total al sistema y pudimos leer la root flag. |
