Bashed
| Sistema operativo | Dificultad | Fecha de Lanzamiento | Creador |
|---|---|---|---|
| Linux | Easy | 09 Deciembre 2017 | Arrexel |
Reconocimiento
Lanzamos una traza ICMP a la máquina objetivo para comprobar que tengamos conectividad.

Enumeración inicial
Realizamos un escaneo con nmap para descubrir que puertos TCP se encuentran abiertos en la máquina víctima.
nmap -sS -p- --open --min-rate 5000 -Pn -n 10.10.10.68 -oG open_ports -vvv

Lanzamos una serie de script básicos de enumeración propios de nmap, para conocer la versión y servicio que esta corriendo bajo los puertos.
nmap -sCV -p80 -oN services -vvv 10.10.10.68

Explotación inicial


Vemos que es un Blog, el cual habla acerca del proyecto https://github.com/Arrexel/phpbash.
Si hacemos un poco de fuzzing encontramos la ruta /dev

Y bajo esta ruta, el archivo phpbash.php.



Lanzamos una reverse shell a nuestra máquina, para tener una terminal mucho más interactiva.
Nos ponemos en escucha con netcat.
nc -lnvp 443
Creamos un servidor http con python, para compartir la reverse shell php-reverse-shell.php
Nos movemos a un directorio en el cual podamos escribir, por ejemplo tmp y descargamos la reverse shell.
Ejecutamos la reverse shell con php php-reverse-shell.php.

Ganamos acceso al sistema.

Realizamos el tratamiento de la tty.
Leemos el flag de user.txt.

Enumeración / Movimiento lateral
www-data -> scriptmanager

Elevación de privilegios
Si enumeramos el sistema, encontramos en la raíz un directorio scripts el cual contiene lo siguiente.

Subimis pspy a la máquina víctima y lo ejecutamos.

Podemos observar, que se esta ejecutando como el usuario root todos los scripts de python bajo el directorio /scripts, el cual somos dueño.
Creamos un pequeño script en python el cual asigne privilegios SUID a la bash.


Leemos el flag de root.txt
