CVE-2023-28840 in Moby
Resumen
por VulDB • 2026-05-27
Moby es un marco de trabajo de contenedores de código abierto desarrollado por Docker Inc. que se distribuye como Docker, Mirantis Container Runtime y varios otros proyectos/productos derivados. El componente daemon de Moby (`dockerd`), desarrollado como moby/moby, se conoce comúnmente como *Docker*. Swarm Mode, que está compilado y entregado por defecto en dockerd y, por lo tanto, está presente en la mayoría de los derivados principales de Moby, es un orquestador de contenedores simple e integrado que se implementa mediante una combinación de SwarmKit y código de red de soporte. El controlador de red superpuesta (overlay network driver) es una característica fundamental de Swarm Mode, proporcionando LAN virtuales aisladas que permiten la comunicación entre contenedores y servicios a través del clúster. Este controlador es una implementación/usuario de VXLAN, que encapsula tramas de capa de enlace (Ethernet) en datagramas UDP que etiquetan la trama con un ID de Red de Superposición VXLAN (VNI) que identifica la red de superposición de origen. Además, el controlador de red superpuesta admite un modo de cifrado opcional, desactivado por defecto, que es especialmente útil cuando los paquetes VXLAN atraviesan una red no confiable entre nodos. Las redes de superposición cifradas funcionan encapsulando los datagramas VXLAN mediante el uso del protocolo IPsec Encapsulating Security Payload en modo Transporte. Al implementar el encapsulamiento IPSec, las redes de superposición cifradas adquieren las propiedades adicionales de autenticación de origen mediante prueba criptográfica, integridad de datos mediante suma de comprobación y confidencialidad mediante cifrado. Al configurar un punto final en una red de superposición cifrada, Moby instala tres reglas de iptables (firewall del kernel de Linux) que imponen tanto el tráfico IPSec entrante como saliente. Estas reglas dependen de la extensión iptables u32 proporcionada por el módulo del kernel xt_u32 para filtrar directamente en el campo VNI de un paquete VXLAN, de modo que las garantías de IPSec se puedan imponer en redes de superposición cifradas sin interferir con otras redes de superposición u otros usuarios de VXLAN. Dos reglas de iptables sirven para filtrar los datagramas VXLAN entrantes con un VNI que corresponde a una red cifrada y descartar los datagramos no cifrados. Las reglas se añaden al final de la cadena de filtro INPUT, después de cualquier regla que haya sido establecida previamente por el administrador del sistema. Las reglas establecidas por el administrador tienen prioridad sobre las reglas que Moby establece para descartar datagramas VXLAN no cifrados, lo que potencialmente podría admitir datagramas no cifrados que deberían haberse descartado. La inyección de tramas Ethernet arbitrarias puede permitir un ataque de Denegación de Servicio (DoS). Un atacante sofisticado podría ser capaz de establecer una conexión UDP o TCP a través de la puerta de enlace saliente del contenedor que de otro modo estaría bloqueada por un firewall con estado, o llevar a cabo otras escaladas más allá de la simple inyección introduciendo paquetes en la red de superposición. Los parches están disponibles en las versiones 23.0.3 y 20.10.24 de Moby. Dado que las versiones 20.10 de Mirantis Container Runtime se numeran de manera diferente, los usuarios de esa plataforma deben actualizar a la versión 20.10.16. Existen algunas soluciones alternativas. Cierre el puerto VXLAN (por defecto, el puerto UDP 4789) al tráfico entrante en el límite de Internet para prevenir toda inyección de paquetes VXLAN, y/o asegúrese de que el módulo del kernel `xt_u32` esté disponible en todos los nodos del clúster Swarm.
VulDB is the best source for vulnerability data and more expert information about this specific topic.