El gran éxito de la adopción de Kubernetes por parte de los desarrolladores de software empresarial ha motivado a los atacantes a apuntar a estas instalaciones con exploits diseñados específicamente para aprovechar su popularidad. Los atacantes han mejorado a la hora de ocultar su malware, evitar los casi triviales controles de seguridad y utilizar técnicas comunes como la escalada de privilegios y el movimiento lateral de la red para difundir sus exploits a través de las redes empresariales. Si bien existen métodos para hacer cumplir las mejores prácticas de seguridad de Kubernetes, no son universalmente conocidos y requieren conocimientos, herramientas y tácticas especializadas que son muy diferentes de los casos de uso ordinarios de máquinas virtuales y de nube.
La evidencia del aumento de los ataques centrados en Kubernetes proviene de la telemetría directa, reforzada por informes anecdóticos. Los proveedores de seguridad como Palo Alto Networks, Wiz y Aqua Security han implementado honeypots de Kubernetes que detectan rápidos intentos de comprometer nuevos clústeres, con un El clúster recién creado es atacado en cuestión de minutos o unas pocas horas.. Estos ataques escanean los conocidos puertos TCP/IP 10250-9 utilizados por los contenedores para comunicarse entre sí, por ejemplo. Estos análisis previos al ataque se realizan docenas de veces al día, una indicación de esfuerzos automatizados y programáticos para comprometer el código subyacente.
Examinemos el panorama de amenazas, qué vulnerabilidades están detectando los proveedores de seguridad y las formas en que las empresas pueden reforzar mejor sus instalaciones de Kubernetes y defenderse.
Panorama de amenazas de Kubernetes
A informe de la Fundación de Computación Nativa en la Nube ilustra la complejidad del panorama, con una colección entrelazada de flujos de datos, dependencias y procesos. Estos componentes requieren sus propios métodos de protección para cifrar las comunicaciones, autenticar adecuadamente los contenedores, los repositorios de almacenamiento y los usuarios, y proteger los contenedores contra la explotación. El siguiente diagrama (de la Fundación, interpretado por Trend Micro) muestra que existe una curva de aprendizaje pronunciada para comprender todas las relaciones y cómo encajan las distintas partes.
La complejidad de esta arquitectura se hizo deliberadamente, porque Kubernetes «fue diseñado para permitir a los usuarios tener mucha libertad y utilizó una arquitectura abierta y un modelo de seguridad predeterminado abierto de forma predeterminada», Assaf Morag, analista de datos de Aqua Security, le dice a la OSC. Pero no desesperes: “El hecho de que Kubernetes sea una plataforma tan extensa con tantas integraciones presenta una oportunidad. Facilita la creación de un conjunto de procesos automatizados y sistemáticos que integran la seguridad en el núcleo del proceso de construcción e implementación de Kubernetes”, como dijo recientemente Palo Alto Networks.Guía completa de seguridad de Kubernetes”menciona en su introducción. Sin embargo, la apertura inherente de Kubernetes significa que no existe un único conjunto de herramientas de seguridad que lo haga todo.
Volviendo a los conceptos básicos de seguridad
A menudo, las posturas básicas de seguridad de la red, como no exponer claves de cifrado secretas, usar contraseñas administrativas complejas y no predeterminadas, implementar varios esquemas de segmentación y seguir derechos de acceso con privilegios mínimos, aparentemente se olvidan cuando se trata de cómo proteger los contenedores. «Hemos vuelto a las amenazas que vimos en nuestras redes de la década de 1990», le dice a CSO el gerente de inteligencia de amenazas en la nube de Palo Alto Networks, Nathaniel Quist.