Máquina MOBI DICK
Esta máquina tendrá un contenedor de Docker funcionando en su interior pero que no se encontrará expuesto. De tal forma, que dentro del contenedor va a estar corriendo un Grafana vulnerable a LFI. Por tanto, una vez hecha la intrusión por SSH con el usuario llamado Pinguinito, utilizaremos chisel para poder acceder al contenedor de Docker interno y así acceder al grafana que corre por el puerto
Dentro del contenedor con el grafana vulnerable a LFI, tendremos un archivo llamado database_pass.txt que contendrá las credenciales de acceso a una base de datos de KeePass dentro del directorio /home de la máquina víctima.
Dentro de esta base de datos tendremos las credenciales del usuario ballenasio y así poder acceder a este usuario que se encuentra dentro del grupo sudo y así poder convertirnos en root.
El primer paso será descargar una imagen ISO de Ubuntu Server:
Y configuramos las credenciales y datos de acceso:
ballenasio:secureballenasio
El primer paso será crear un usuario nuevo que será el que se utilice para entrar mediante fuerza bruta por el protocolo SSH. El cual se llamará pinguinito, con la contraseña de love:
pinguinito:love
Ahora dentro de SSH, vamos a hacer que sólo se pueda acceder a esta máquina como el usuario pinguinito y no con ballenasio. Por lo que vamos a modificar el archivo de configuración de SSH:
sudo nano /etc/ssh/sshd_config
Y añadimos esta última línea:
Reiniciamos el servicio:
Y ahora comprobamos que sí podemos acceder como el usuario pinguinito pero no como el usuario ballenasio:
Ahora el siguiente paso será abrir el puerto 80, donde habrá una web muy sencilla que le de una pista al usuario de un usuario existente dentro de la máquina, el cual será el usuario pinguinito:
sudo apt install apache2
Y ahora con apache instalado, tendremos disponible la ruta /var/www/html:
Vamos a crear un nuevo archivo en .php que imprima un mensaje por pantalla diciendo: Hola Pinguinito:
<?php echo "Hola Pinguinito. La ballena Docker con Grafana 8.3.0 esconde un database_pass.txt en /tmp"; ?>
Y ahora reiniciamos el servicio y además con systemctl enable hacemos que se inicie cada vez que se arranque el sistema:
systemctl restart apache2
systemctl enable apache2
Instalamos php:
sudo apt install php
Podemos comprobar cómo nos encuentra ese penguin.php con gobuster:
Ahora vamos a instalar Docker, donde habrá un contenedor con una versión vulnerable de grafana al cual tendremos que hacer port forwarding con chisel:
sudo apt install docker.io
Una vez que docker esté instalado, vamos a crear una base de datos de keepass que estará dentro del sistema, y a su vez que la contraseña se encuentre dentro del directorio /etc/pass.txt:
supermegastrongpasswordpenguin
Y dentro de esta base de datos tendremos el acceso al usuario ballenasio:
Ahora vamos a tener esta base de datos dentro del directorio /home del servidor:
Y ahora a su vez, vamos a esconder un archivo .txt con la contraseña de la base de datos dentro de un contenedor con el grafana vulnerable a LFI:
Y ahora creamos el Dockerfile donde vamos a pasarle el database_pass.txt dentro del directorio /etc, para que el atacante pueda acceder a él mediante un LFI:
Y ahora creamos esta imagen:
sudo docker build --tag grafana_ctf . sudo docker images
Y dentro del contenedor creamos el archivo database_pass.txt en el directorio /tmp:
Y convertimos este contenedor a una imagen:
docker commit 49 grafana_vulnerable
Una vez hecho esto, debemos conseguir que el sistema inicie este contenedor cada vez que se arranque, por lo que lo añadiremos a crontab de la siguiente forma:
crontab -e
Reiniciamos el sistema para comprobar si a cada reinicio se lanza un contenedor de este grafana:






















