En el terreno siempre cambiante de la ciberseguridad, donde cada nuevo día puede descubrirse una amenaza previamente desconocida, un reciente hallazgo pone en alerta a la comunidad. Se han descubierto cuatro vulnerabilidades, colectivamente denominadas «Leaky Vessels» (Vasijas con Fugas), que permiten a los hackers escapar de los contenedores y acceder al sistema operativo subyacente del host.
Estas fallas fueron descubiertas en noviembre de 2023 por Rory McNamara, investigador de seguridad en Snyk, quien inmediatamente reportó sus hallazgos a las partes afectadas para su corrección. Hasta ahora, Snyk no ha encontrado indicios de explotación activa de las fallas de Leaky Vessels en la naturaleza, pero la publicidad en torno al tema podría cambiar este estatus, motivo por el cual se recomienda a todos los administradores de sistemas afectados que apliquen las actualizaciones de seguridad disponibles lo antes posible.
Escapando de los Contenedores
Los contenedores son aplicaciones empaquetadas en un archivo que contiene todas las dependencias de tiempo de ejecución, ejecutables y código necesarios para ejecutar una aplicación. Estos contenedores son ejecutados por plataformas como Docker y Kubernetes que hacen correr la aplicación en un ambiente virtualizado aislado del sistema operativo.
El escape de contenedores ocurre cuando un atacante o una aplicación maliciosa se rompe fuera del ambiente aislado del contenedor y gana acceso no autorizado al sistema host o a otros contenedores.
El equipo de Snyk ha identificado cuatro vulnerabilidades denominadas colectivamente «Leaky Vessels» que impactan la infraestructura de contenedores y las herramientas de construcción runc y Buildkit, permitiendo potencialmente a los atacantes realizar escapes de contenedor en varios productos de software.
Dado que runc o Buildkit son utilizados por una amplia gama de populares software de gestión de contenedores, como Docker y Kubernetes, la exposición a ataques se vuelve mucho más significativa.
Resumen de las Fallas de «Leaky Vessels»
- CVE-2024-21626: Fallo que proviene de un error en el orden de operaciones con el comando WORKDIR en runc. Permite a los atacantes escapar del entorno aislado del contenedor, otorgándoles acceso no autorizado al sistema operativo host y potencialmente comprometiendo todo el sistema.
- CVE-2024-23651: Una condición de carrera dentro del manejo del caché de montaje de Buildkit que lleva a comportamientos impredecibles, permitiendo potencialmente a un atacante manipular el proceso para acceder de manera no autorizada o para interrumpir las operaciones normales del contenedor.
- CVE-2024-23652: Falla que permite la eliminación arbitraria de archivos o directorios durante la fase de desmontaje del contenedor de Buildkit. Podría llevar a denegación de servicio, corrupción de datos o manipulación no autorizada de datos.
- CVE-2024-23653: Esta vulnerabilidad surge de controles de privilegios inadecuados en la interfaz GRPC de Buildkit. Podría permitir a los atacantes ejecutar acciones más allá de sus permisos, llevando a una escalada de privilegios o acceso no autorizado a datos sensibles.
Impacto y soluciones
Buildkit y runc son ampliamente utilizados por proyectos populares como Docker y diversas distribuciones de Linux. Debido a esto, la corrección de las vulnerabilidades de «Leaky Vessels» involucró acciones coordinadas entre el equipo de investigación de seguridad de Snyk, los mantenedores de los componentes afectados (runc y BuildKit), y la comunidad de infraestructura de contenedores en general.
El 31 de enero de 2024, Buildkit solucionó las fallas con la versión 0.12.5, y runc abordó la cuestión de seguridad que lo afectaba en la versión 1.1.12.
Docker lanzó la versión 4.27.0 el mismo día, incorporando las versiones seguras de los componentes en su motor Moby, con las versiones 25.0.1 y 24.0.8.
Servicios como Amazon Web Services, Google Cloud y Ubuntu también publicaron boletines de seguridad relevantes, guiando a los usuarios a través de los pasos apropiados para resolver las fallas en su software y servicios.
Finalmente, CISA también publicó una alerta instando a los administradores de sistemas en la nube a tomar la acción apropiada para asegurar sus sistemas contra una explotación potencial.
fuente: Bleeping Computer