Upload - DockerLabs
Video de YouTube
| OS | Dificultad | Creator |
|---|---|---|
| Linux | Super Fácil | ElPinguinoDeMario |
Contenidos
Escaneo y Reconocimiento de puertos
Vamos a iniciar nuestro reconocimiento con un rápido escaneo de nmap.
nmap -p- --open -sS -sC -sV --min-rate=5000 -vvv -n -Pn -oN escaneo 172.17.0.2
-p-- Busqueda de puertos abiertos--open- Enumera los puertos abiertos-sS- Es un modo de escaneo rapido-sC-- Que use un conjunto de scripts de reconocimiento-sV- Que encuentre la version del servicio abirto--min-rate=5000- Hace que el reconocimiento aun vaya mas rapido mandando no menos de 5000 paquetes-n- No hace resolución DNS-Pn- No hace ping-vvv- Muestra en pantalla a medida que encuentra puertos (Verbose)
Solo tiene el puerto 80 abierto
Enumeración Web
Usamos Gobuster para hacer un reconocimiento web y ver que directorios podemos encontrar en dicho sitio.
gobuster dir -u http://172.17.0.2/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php
gobuster dir- Indica que estás utilizando la herramienta Gobuster para realizar un escaneo de directorios.-u http://172.20.10.5/Especifica la URL objetivo que deseas escanear en busca de directorios.-wEspecifica que diccionario queremos usar-xPara indicar que tipo de extension queremos que nos encuentre
Encontramos un directorio llamado upload.php, si accedemos a el tenemos un panel para poder subir archivos
Intrusión y Escalada de privilegios
Si hacemos la prueba de subir un archivo php vemos que nos permite hacerlo, entonces vamos ha subir una reverse shell en php para poder hacer la intrusión en la maquina.
Este link os llevara a un repositorio donde tengo colgado una reverse shell php
https://github.com/romabri/reverse_shell_php/blob/main/reverse.php
En la reverse shell hay un apartado que se ha de cambiar y poner la IP de la maquina víctmia y un puerto, normalmente se usa el puerto 443.
Una vez hecho esto en una terminal escribimos el siguiente comando:
nc -lvnp [El puerto que useis vosotros]
Una vez dentro de la maquina hacemos el comando sudo -l, y aparece que el binario env lo podemos ejecutar como sudo sin contraseña vamos a explotar esto para convertirnos en root.
Para ello podemos acceder a la página web de GTFOBINS (https://gtfobins.github.io), y buscar por el nombre del binario.
Si hay forma de escalar privilegios ahí estara descrito, para el binario env hacemos lo siguiente:
sudo /usr/bin/env /bin/sh
Esto nos dara una terminal con permisos de administrador y ya habremos terminado la máquina.