🟢FunboxEasyEnum

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

Enumeración

Servicios abiertos

Comenzamos realizando un escaneo rápido de los servicios que tiene abiertos está máquina.

nmap -p- --open --min-rate 5000 -Pn -n -vvv 192.168.113.132

Puertos 22 (SSH) y 80 (HTTP) abiertos. Vamos a realizar un escaneo profundo de estos servicios.

nmap -p22,80 -sVC -vvv 192.168.113.132

Servicios abiertos:

  • Puerto 22 -> SSH -> OpenSSH 7.6

  • Puerto 80 -> HTTP -> Apache httpd 2.4.29

Enumeración Web

Comenzamos viendo el contenido del puerto 80 en el navegador Web.

Vemos la página por defecto de un servidor Apache. Vamos a enumerar si existen directorios interesantes.

feroxbuster --url http://192.168.113.132 -d 2 -x php -s 200 301

Encontramos http://192.168.113.132/mini.php. Vemos su contenido en el navegador.

Tenemos la posibilidad de cargar archivos. Vamos a tratar de aprovechar esto para subir una reverse shell.

Explotación

Utilizaremos la shell php-reverse-shell.php. La configuramos para adaptarla a nuestra IP y puerto.

En una terminar ponemos un oyente nc a la escucha en el puerto 1337.

Luego navegamos a http://192.168.113.132/mini.php y cargamos el shell.php

Ahora damos para ejecutar este archivo, de lo contrario el servidor no ejecutará este archivo. Damos permisos 0777.

Una vez completado este proceso, vaya a http://192.168.113.132/php-reverse-shell.php A partir de ese momento, recibiremos el shell en nuestro nc que tenemos a la escucha.

El siguiente paso será realizar el tratamiento de la tty para tener una shell interactiva.

python3 -c  'import pty; pty.spawn("/bin/bash")'

Buscamos la flag local.txt

find / -name local.txt

Pivotando de www-data a usuario "goat"

Enumeramos los usuario disponibles en el sistema.

5 usuarios en el sistema. Con estos 5 usuarios y el diccionario "rockyou.txt", vamos a tratar de iniciar sesión a través del servicio SSH disponible.

Utilizamos hydra para buscar la contraseña con un ataque de fuerza bruta.

hydra -L users -w 10 -P '/home/elhackeretico/rockyou.txt' -t 10 -v -f 192.168.59.132 ssh 

Tras un momento de ejecución, obtenemos la contraseña para el usuario "goat" es "goat". Ahora vamos a tratar de conectarnos mediante SSH con las credenciales obtenidas.

Ya estamos conectados a la máquina objetivo como usuario "goat"

Elevación de privilegios

Comenzamos enumerando los servicios que puede ejecutar el usuario "goat" como "root" sin necesidad de contraseña.

sudo -l

Buscamos en GTFOBins como elevar privilegios aprovechando esto.

Ya tenemos privilegios máximos. Vamos a buscar la flag proof.txt

Last updated