La seguridad de containers de Kubernetes es un tema hol¨ªstico, lo cual significa que se deben proteger los pods, im¨¢genes, runtimes, hosts y la misma infraestructura de Kubernetes.
Seguridad de containers de Kubernetes
Kubernetes es una herramienta popular de c¨®digo abierto para la orquestaci¨®n de containers que est¨¢ apoder¨¢ndose del mercado. Tener una herramienta de orquestaci¨®n como??es vital para las organizaciones; de otra forma no podr¨ªan correr aplicaciones contenerizadas con prop¨®sitos de producci¨®n. Sin su ayuda, intentar desplegar y gestionar containers de forma manual usando la l¨ªnea de comando ser¨ªa casi imposible a gran escala desde un punto de vista de log¨ªstica.
Existen muchos beneficios que surgen de automatizar tareas, como el despliegue, escalamiento y administraci¨®n generalizada de las aplicaciones contenerizadas. Es crucial entender que esta misma herramienta puede causar brechas en su seguridad si no se colocan las medias apropiadas.
Kubernetes no gestiona la seguridad
De acuerdo con reportes recientes, m¨¢s del 86% de las organizaciones administran alguna porci¨®n de sus workloads de containers usando Kubernetes; sin embargo, la seguridad contin¨²a siendo una preocupaci¨®n importante. En esta misma encuesta, m¨¢s de la mitad de los respondientes declararon que su organizaci¨®n no ha hecho una inversi¨®n adecuada en la seguridad de containers. Sin una estrategia adecuada, esto puede causar retrasos en la adopci¨®n de Kubernetes o incluso serios incidentes de seguridad.
M¨¢s all¨¢ de las caracter¨ªsticas b¨¢sicas, como reforzar el control de accesos basado en roles, Kubernetes no la capacidad de proteger aplicaciones contra vulnerabilidades. Es aqu¨ª donde debe usar programas adicionales o de terceros para asegurar que los sistemas apropiados de seguridad se encuentran implementados.
Cosas para considerar
Estas son algunos elementos para considerar al momento de proteger sus containers de Kubernetes:
Configuraciones por defecto
Uno de los primeros componentes a considerar al momento de proteger sus containers de Kubernetes son las configuraciones por defecto. Todas las configuraciones por defecto de Kubernetes deben revisarse antes de usarse para minimizar el riesgo de que un ataque dentro de un pod se propague a otros.
Aunque Kubernetes cuenta con un framework espec¨ªfico para cosas como el control de accesos, la mayor¨ªa de estas caracter¨ªsticas de control de accesos no est¨¢n habilitadas por defecto. Estos tipos de controles pueden no estar configurados para reforzar pol¨ªticas de menor privilegio, d¨¢ndole acceso a usuarios que no necesariamente necesitan la informaci¨®n. Dejar expuestos datos potencialmente sensibles de esta forma es un gran riesgo porque puede ponerla en manos de usuarios maliciosos.
Container runtime
Un container runtime es una aplicaci¨®n especial que ejecuta containers. Es importante entender que Kubernetes no tiene protecciones contra un ataque en runtime, y tampoco puede detectar intrusiones despu¨¦s de que ocurren.
En caso de detectarse una brecha activa o una nueva vulnerabilidad en un container en ejecuci¨®n, es necesario terminar el container entero y se debe lanzar una versi¨®n no comprometida. La informaci¨®n que arregl¨® la causa ra¨ªz del problema de seguridad tambi¨¦n debe usarse para reconfigurar el componente en el ambiente.
±õ³¾¨¢²µ±ð²Ô±ð²õ
Las im¨¢genes tambi¨¦n pueden vulnerar a los containers. ±õ³¾¨¢²µ±ð²Ô±ð²õ mal configuradas pueden darle a los atacantes un punto de acceso para infiltrarse en una red, y las im¨¢genes que contienen claves de autenticaci¨®n espec¨ªficas pueden ayudar a los cibercriminales a llevar a cabo ataques futuros.
Detectar c¨®digo malicioso que est¨¢ dentro de un container requiere de escanear vulnerabilidades en registros y en producci¨®n, lo cual no es una caracter¨ªstica de Kubernetes.
Seguridad del host
Por dise?o, Kubernetes corre containers en los servidores en donde se encuentra asignado. Ya que la herramienta de orquestaci¨®n no tiene nada que ver con la seguridad de esos servidores, deben usarse otros procesos para monitorearlos.
Muchos negocios, entonces, buscan seguridad tradicional para el host para detectar exploits que amenacen los recursos del sistema, pero, en caso de que tambi¨¦n se comprometa al host, lo cual puede llevar a consecuencias devastadoras. Los sistemas del host tambi¨¦n deben monitorearse para detectar brechas y actividades sospechosas para defenderse contra ataques.
Comunicaciones pod-to-pod
Por defecto, Kubernetes no aplica pol¨ªticas de red a cada pod, lo cual significa que los pods en el ambiente de Kubernetes pueden ¡°hablar¡± entre ellos. Es en el mejor inter¨¦s de un buen funcionamiento que los containers y los pods hablen entre ellos dentro de los despliegues. Esto puede, sin embargo, r¨¢pidamente convertirse en un blanco f¨¢cil para los cibercriminales, quienes solamente tienen que entrar a un container para poder moverse lateralmente dentro del ambiente.
Asociar una pol¨ªtica de red con un pod limita su comunicaci¨®n a activos definidos, d¨¢ndole un rol similar al de las reglas y controles de los firewalls.
Protegiendo los containers de Kubernetes
Especialmente ahora que es una herramienta usada por la mayor¨ªa de las organizaciones, la seguridad de containers de Kubernetes es crucial para mantener seguras las redes y las aplicaciones frente a brechas y ataques maliciosos. Al integrar exitosamente la seguridad en cada fase del ciclo de vida de los containers de Kubernetes, los negocios pueden tener la confianza de que est¨¢n implementando las medidas correctas.
Investigaciones Relacionadas
Art¨ªculos Relacionados