Máquina Fing (Vulnyx)


Comenzamos con averiguar la dirección Ip de la Máquina Víctima, para ello 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 Víctima: 10.0.2.49
Comprobamos si tenemos conexión con la Máquina Víctima, para ello ejecutamos el siguiente comando:

$ ping -c 1 10.0.2.49


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.49 -sVC


Como podemos comprobar la Máquina Víctima tiene abiertos los puertos 22, 79 y 80.

Investigando sobre el servicio finger (79), vemos que es un protocolo que proporciona información de los usuarios de una máquina, estén o no conectados en el momento de acceder al servicio, y en la pagina de hacktricks se hace mención de la herramienta finger-user-enum de pentestmonkey, por lo tanto nos la descargamos para enumerar los usuarios, para ello ejecutamos los siguientes comandos:

$ chmod +x finger-user-enum.pl
$ ./finger-user-enum.pl -U /usr/share/wordlists/seclists/Usernames/xato-net-10-million-usernames.txt -t 10.0.2.49


Encontramos el usuario adam.

Con la herramienta hydra realizamos un ataque a ssh para intentar crackear la contraseña del usuario adam, para ello ejecutamos el siguiente comando:

$ hydra -l adam -P rockyou.txt ssh://10.0.2.49 -T 64


Obtenemos la contraseña passion.

A continuación, nos conectamos por ssh, para ello ejecutamos el siguiente comando:

$ ssh adam@10.0.2.49


Introducimos la contraseña obtenida anteriormente.

¡¡¡Somos adam!!!.

Buscamos todos los binarios con el bit SUID, para ello ejecutamos el siguiente comando:

$ find / -perm -4000 2>/dev/null


Como podemos comprobar el binario doas tiene el bit SUID activado, miramos la ayuda de este binario encuentro que con el parámetro -u puedo ejecutar comandos como un usuario, además investigando sobre este binario encuentro que en el archivo de configuración /etc/doas.conf es donde se definen que comandos pueden ejecutar ciertos usuarios, por lo tanto, vemos dicho archivo de configuración, para ello ejecutamos el siguiente comando:

$ cat /etc/doas.conf


Vemos que el usuario adam puede ejecutar como el usuario root el binario find, por lo tanto, nos vamos a la pagina gtfobins a mirar el payload.


Vemos que este binario tiene para escapar una shell, lo ejecutamos de la siguiente manera.

$ /usr/bin/doas -u root /usr/bin/find . -exec /bin/sh \; -quit


¡¡¡Ya somos root!!!.

Ya podemos leer las flags de user root.