Máquina Beginner (Vulnyx)

Comenzamos con averiguar la dirección IP de la Máquina Victima, para ello primeramente utilizaremos la herramienta netdiscover, para ello ejecutaremos 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.44

Comprobamos si tenemos conexión con la Máquina Victima, para ello ejecutamos el siguiente comando:

$ ping -c 1 10.0.2.44

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

Como podemos comprobar la Máquina Victima tiene abierto el puerto 22 y 80.

Comprobamos que es lo que corre en el puerto 80.


Nos encontramos con un mensaje hacia un trabajador que dice "Hay archivos sensibles expuestos ¡Corríjanlo cuanto antes! Departamento de TI".

A continuación, realizamos con la herramienta gobuster un fuzzing web, pero no encontramos nada.

Volvemos a realizar con la herramienta nmap un reconocimiento de los servicios pero esta vez del protocolo UDP, para ello ejecutamos el siguiente comando:

$ nmap --top-ports 100 10.0.2.44 -sU --open


Como podemos comprobar la Máquina Victima tiene abierto el puerto 68 y 69.

A continuación, haremos uso de la herramienta Metasploit, para ello ejecutamos el siguiente comando para ejecutarla:

$ msfconsole

Haremos uso del modulo auxiliary/scanner/tftp/tftpbrute para descubrir si hay ficheros expuestos en el servicio TFTP (69), para ello ejecutamos el siguiente comando:

msf6> use auxiliary/scanner/tftp/tftpbrute

Configuramos y lanzamos el modulo, para ello ejecutamos los siguientes comando dentro de la consola de Metasploit:

msf6> set RHOST 10.0.2.44
msf6> run


Encontramos el fichero backup-config.

A continuación, nos conectamos via TFTP (69) y nos descargamos el fichero, para ello ejecutamos los siguientes comandos:

$ tftp 10.0.2.44
tftp> get backup-config

Comprobamos de que tipo de fichero se trata, para ello ejecutamos el siguiente comando:

$ file backup-config

Vemos que se trata de un fichero zip, lo descomprimimos, para ello ejecutamos el siguiente comando:

$ unzip backup-config

Encontramos una clave privada id_rsa y un archivo de configuración de ssh.

Visualizamos el fichero de configuración de ssh, para ello ejecutamos el siguiente comando:

$ cat sshd_config

Encontramos el usuario boris, por lo que deducimos que la clave privada id_rsa es del mismo.

A continuación, utilizamos el fichero id_rsa para conectarnos via ssh a la victima, para ello ejecutamos los siguientes comandos:

$ chmod 600 id_rsa
$ ssh -i id_rsa boris@10.0.2.44


¡¡¡Somos boris!!!

Enumeramos lo permisos sudo, para ello ejecutamos el siguiente comando:

$ sudo -l


Nos encontramos con el binario html2text que lo podemos ejecutar como el usuario root, investigando por internet encontramos que el binario html2text lee documentos HTML proporcionados en la línea de comandos (o desde la entrada estándar), los convierte en un flujo de caracteres de texto plano y escribe la salida en el archivo o en la terminal, por lo tanto, puedo leer cualquier fichero del sistema.

Lo ejecutamos de la siguiente manera:

$ sudo -u root /usr/bin/html2text /root/.ssh/id_rsa


Conseguimos leer la clave privada id_rsa del usuario root para conectarnos por ssh a la Máquina Victima.

Nos la copiamos en un archivo y corregimos el formato, para ello ejecutamos el siguiente comando:

$ nano id_rsa


Utilizamos el fichero id_rsa para conectarnos via ssh a la Máquina victima, para ello ejecutamos los siguientes comandos:

$ chmod 600 id_rsa
$ ssh -i id_rsa root@10.0.2.44

¡¡¡Ya somos root!!!

También pudiendo leer las flags de user root.