Cap es una máquina Linux de dificultad fácil que ejecuta un servidor HTTP con funciones administrativas, como la captura de tráfico de red. Analizando estas funciones, es posible obtener información sensible que permite avanzar en la intrusión.

Enumeracion:

Usaremos nmap, para buscar los puertos y servicios que estan corriendo detras del servicio.

Descubriremos 3 puertos abiertos:

  • 21 del FTP.

  • 22 del SSH.

  • 80 de un servicio web HTTP.

Si entramos en el servicio WEB, veremos que es un dashboard que lo interesante es que permite “hacer” capturas de red.

Si vemos el menu, existe un apartado cuyo nombre es Security Snapshot. Si vamos a ese apartado, podremos ver en la URL que se referencia a cierto objeto o captura, tambien podremos apreciar un BOTON

IDOR

Por lo que se nos puede ocurrir ejecutar un IDOR. Generalmente usariamos Web-Fuzzing, si analizamos el HTML de la WEB, podremos ver que el boton referencia a una ruta que permite descargar las capturas.

Bueno, una vez hecha, veremos archivos que tienen un peso interesante:

Si guardamos la captura 0 y la analizamos con TSHARK, encontraremos cosas interesantes.

USER PASSWORD

Si buscamos entre esas capturas veremos cosas interesantes de un puerto que ya hemos descubierto, FTP.

Comando para filtro en TSHARK:

tshark -r <captura>.pcap -Y "<request>"

Descubrimos la password del usuario nathan.

PRIVESC

Una vez ingresamos usando el puerto SSH, nos queda elevar nuestro privilegio.

Si buscamos permisos en sudoers, o con SUID NO encontraremos nada.

Pero si filtramos por capabilities, veremos que Python tiene asignada la capabilidad setuid.

Por lo que podemos aprovechar esto para ejecutar comandos como usuario root:

#Python
import os
os.setuid(0)
os.system("bash")

FIN