Ataque al socket de Docker
¿Qué es Ataque al socket de Docker?
Ataque al socket de DockerAbuso de un contenedor que monta /var/run/docker.sock para controlar el daemon Docker, escapar del contenedor y obtener root en el host.
El socket /var/run/docker.sock es un plano de control sin autenticacion para el daemon Docker, que corre como root en el host. Cuando un contenedor lo monta (algo habitual en runners de CI, agentes de monitorizacion o sidecars), cualquier proceso interno puede invocar la API del daemon. Quien comprometa ese contenedor puede crear un contenedor privilegiado con el sistema de ficheros del host montado en /, instalar una puerta trasera, leer /etc/shadow o saltar al namespace de red del host. Mitigaciones: no montar docker.sock en contenedores no confiables, usar Docker rootless, exponer el daemon con mTLS sobre TLS o emplear intermediarios restringidos como sysbox o kaniko.
● Ejemplos
- 01
Comprometer un agente Jenkins que monta /var/run/docker.sock y lanzar un contenedor con --privileged -v /:/host.
- 02
Un atacante dentro de Portainer usando el socket para enumerar y arrancar contenedores root.
● Preguntas frecuentes
¿Qué es Ataque al socket de Docker?
Abuso de un contenedor que monta /var/run/docker.sock para controlar el daemon Docker, escapar del contenedor y obtener root en el host. Pertenece a la categoría de Ataques y amenazas en ciberseguridad.
¿Qué significa Ataque al socket de Docker?
Abuso de un contenedor que monta /var/run/docker.sock para controlar el daemon Docker, escapar del contenedor y obtener root en el host.
¿Cómo funciona Ataque al socket de Docker?
El socket /var/run/docker.sock es un plano de control sin autenticacion para el daemon Docker, que corre como root en el host. Cuando un contenedor lo monta (algo habitual en runners de CI, agentes de monitorizacion o sidecars), cualquier proceso interno puede invocar la API del daemon. Quien comprometa ese contenedor puede crear un contenedor privilegiado con el sistema de ficheros del host montado en /, instalar una puerta trasera, leer /etc/shadow o saltar al namespace de red del host. Mitigaciones: no montar docker.sock en contenedores no confiables, usar Docker rootless, exponer el daemon con mTLS sobre TLS o emplear intermediarios restringidos como sysbox o kaniko.
¿Cómo defenderse de Ataque al socket de Docker?
Las defensas contra Ataque al socket de Docker combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para Ataque al socket de Docker?
Nombres alternativos comunes: Escape via docker.sock.
● Términos relacionados
- cloud-security№ 211
Container Escape
Exploit que rompe el aislamiento entre un contenedor y su host, permitiendo al atacante ejecutar codigo en el nodo o el kernel subyacente.
- cloud-security№ 213
Seguridad de contenedores
Práctica de proteger imágenes de contenedor, registros, orquestadores y el runtime en el que se ejecutan los contenedores.
- attacks№ 1116
Ataque a la cadena de suministro
Ataque que compromete a un proveedor de software, hardware o servicios de confianza para llegar a sus clientes finales.
- vulnerabilities№ 860
Escalada de privilegios
Clase de vulnerabilidades que permite al atacante obtener permisos superiores a los concedidos inicialmente, por ejemplo pasar de usuario normal a administrador.