Grooti DockerLabs (Easy)
Instalación
Cuando obtenemos el .zip nos lo pasamos al entorno en el que vamos a empezar a hackear la maquina y haremos lo siguiente.
unzip grooti.zipNos lo descomprimira y despues montamos la maquina de la siguiente forma.
bash auto_deploy.sh grooti.tarInfo:
## .
## ## ## ==
## ## ## ## ===
/""""""""""""""""\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~
\______ o __/
\ \ __/
\____\______/
___ ____ ____ _ _ ____ ____ _ ____ ___ ____
| \ | | | |_/ |___ |__/ | |__| |__] [__
|__/ |__| |___ | \_ |___ | \ |___ | | |__] ___]
Estamos desplegando la máquina vulnerable, espere un momento.
Máquina desplegada, su dirección IP es --> 172.17.0.2
Presiona Ctrl+C cuando termines con la máquina para eliminarlaPor lo que cuando terminemos de hackearla, le damos a Ctrl+C y nos eliminara la maquina para que no se queden archivos basura.
Escaneo de puertos
Info:
Veremos en el puerto 80 que aloja una pagina web y algo mas interesante, tiene expuesto el puerto 3306 que corresponde con el de MySQL, por lo que vamos a enumerar estos dos puertos a ver que encontramos.
Si inspeccionamos la pagina del puerto 80 veremos la siguiente linea comentada:
Vemos que nos esta proporcionando un nombre de usuario para MySQL llamado Rocket por lo que vamos a probar a lanzar una fuerza bruta a MySQL con hydra de esta forma:
Hydra
Info:
Veremos que ha funcionado, por lo que vamos a conectarnos a la DDBB con dichas credenciales.
MySQL
Info:
Una vez que estemos dentro, vamos a realizar una enumeracion a ver que encontramos.
Info:
Veremos que hay una DDBB bastante interesante llamada files_secret si vemos que tablas tiene por dentro veremos lo siguiente:
Info:
Vamos a listar toda la informacion de dicha tabla...
Info:
Por lo que vemos parecen rutas a nivel de recursos web de la pagina, vamos a probar a ver cuales son las mas interesantes.
Si entramos a /unprivate/secret veremos como un acceso a la terminal pero con un formulario web que nos indica instrucciones de que debemos de hacer, vamos a investigar a ver que podemos aprovechar en este espacio.
Si ponemos un texto y despues un numero, se nos descarga un archivo Excel en el que aparece una palabra aleatoria, si volvemos a descargarnoslo aparece nuestro texto y asi con los demas numeros, vamos a ver cual de los numero no descarga un archivo de Excel o tiene otro contenido con un script:
findWeb.sh
Lo guardamos e instalamos lo siguiente:
Ahora lo ejecutamos de esta forma:
Info:
Vemos que en el numero 16 da un error, por lo que se puede deber a que no sea un archivo Excel si no que, pueda deberse a un archivo de otra cosa, vamos a comprobarlo metiendo el numero 16 y escribiendo cualquier cosa.
Si hacemos esto nos descargara un archivo .zip, si lo descomprimimos veremos lo siguiente:
Info:
Vemos que requiere de una contraseña, por lo que vamos a probar a crackearla con john de esta forma:
Info:
Veremos que nos ha crackeado la password, vamos a probarla en el archivo a ver si funciona.
Info:
Vemos que hemos extraido el archivo de forma correcta, vamos a ver que contiene:
Escalate user grooti
password16.txt
Vemos que son una serie de contraseñas para algun usuario suponemos del sistema, vamos a probarla con hydra por SSH a ver si hay suerte, con 2 usuarios en este caso grooti y rocket.
users.txt
Hydra (grooti)
Info:
Veremos que ha funcionado, por lo que vamos a conectarnos por SSH con dichas credenciales.
Metemos como contraseña YoSoYgRoOt y veremos que estaremos dentro.
Info:
Escalate Privileges
Si nos vamos a /tmp veremos un archivo .sh llamado malicious.sh que si listamos para ver los permisos que tiene veremos lo siguiente:
Vemos que podemos modificar dicho script, si leemos que hace el mismo...
Vemos que crea un archivo en la carpeta /tmp como si fuera un log y lo borra a los 2 segundos:
Veremos que efectivamente hay alguna tarea programada que esta ejecutando dicho script, pero esto en si, no nos interesa, vamos a borrar todo el contenido del script y poner esto:
Lo guardamos y solo tendremos que esperar un rato a que se ejecute por root.
Ahora despues de un rato si listamos la bash veremos lo siguiente:
Vemos que ya se establecieron los permisos SUID a la bash por lo que podremos hacer lo siguiente para ser root.
Info:
Veremos que con esto ya seremos root, por lo que habremos terminado la maquina y leeremos la flag de root.
grooti.txt
Last updated