Docker

Si somos miembros del grupo docker, podemos escalar nuestros privilegios a root.

La idea es montar el directorio / de la máquina host en nuestro contenedor. Una vez montado el directorio, tendremos acceso a root en nuestro contenedor y podremos manipular cualquier archivo del sistema de archivos del host a través del contenedor.

docker run -v /:/mnt -it alpine

Montamos el directorio / (raíz) del host en el directorio /mnt del contenedor y con la opción -it le indicamos que queremos ejecutar una termina interactiva y que la imágen base será alpine.

En caso de que la máquina víctima no tenga acceso a internet, podemos hacer lo siguiente:

  • docker pull alpine: Descargamos la imagen de Alpine en nuestra máquina atacante.
  • docker save -o alpine.tar alpine: Guardamos la imagen de Alpine en un archivo tar y la transferimos a la máquina víctima.
  • docker load -i alpine.tar: Cargamos la imagen desde el archivo tar.
  • docker image ls: Comprobamos que se cargo correctamente la imagen.
  • docker run -v /:/mnt -it alpine: Creamos el contenedor.