Notas de Luis

Laboratorios docker

Tenemos un repositorio de github que se llama vulhub que nos ofrece Dockerfiles para montarnos contenedores vulnerables y practicar hacking:

Y por ejemplo aquí tenemos un fichero .yml para montar con Docker Compose para practicar un local file inclusion:

Para montarnos esto, podemos bajarnos el fichero yml con wget y lo ejecutamos con un docker-compose up -d:

Y ahora ya podemos acceder al navegador por el puerto 5601 que es donde está corriendo esto:

Ahora si quisiera explotar este Local File Inclusion Local File Inclussion (LFI) podría investigar como hacerlo en github:

Lo probamos en ejecutar con curl:

Y vemos que da error, pero en github nos dicen que si miramos los logs veremos el output:

docker-compose logs

OTRO EJEMPLO - VULNERABILIDAD IMAGEMAGICK

Vamos a explotar esta vulnerabilidad que nos permite ejecutar un comando a la hora de que el servicio procese contenido multimedia.

Nos bajamos el docker-compose.yml y el fichero .php, para después desplegarlo todo:

Y vemos que esto corre por el puerto 8080:

Lo tenemos en la web:

Vamos a buscar una imagen que tenga contenido malicioso que nos envíe una reverse shell.

Crear Imágenes con Servicios Vulnerables

Para descargar versiones antiguas o vulnerables de un servicio, debemos ir a la parte de tags de una imagen en dockerhub:

Por tanto podemos utilizar esta imagen la cual es una versión de grafana vulnerable a LFI:

FROM grafana/grafana:8.3.0-ubuntu
 
WORKDIR /tmp
 
COPY root.txt .

Lanzamos un contenedor de la siguiente imagen, donde vemos que podemos explotar el LFI que se acontece en esta versión de grafana:

docker run -d --network=host 05084fb22d95

O incluso podemos montar el contenedor sin hacer ningún port forwarding:

Y vemos que el contenedor estará funcionando dentro de la interfaz de docker:

La encontramos con un arp-scan:

Ahora con el Kali podemos estar a la escucha con chisel:

Y con ubuntu nos conectamos:

Configuramos el túnel en el navegador:

Y desde el Kali ya tenemos acceso al contenedor de la máquina ubuntu que está escondido:

computing/docker/laboratorios_docker_pentesting.txt · Última modificación: por 127.0.0.1