Cómo detectar la vulnerabilidad ExternalIP de Kubernetes en tus configuraciones de Kubernetes con Snyk
Ben Laplanche
10 de diciembre de 2020
0 minutos de lecturaEl martes, se anunció una vulnerabilidad de Kubernetes que afecta a todas las versiones de Kubernetes y que podría permitir que un usuario malicioso intercepte el tráfico si se usan direcciones IP externas en los servicios. Snyk agregó una nueva verificación a Snyk Infrastructure as Code (Snyk IaC) para revisar tus definiciones de implementación de Kubernetes y avisarte si eres vulnerable a este tipo de ataque.
Lamentablemente, debido a la naturaleza de CVE-2020-8554, no es posible aplicar un parche y la solución alternativa recomendada es no usar direcciones IP externas. Los clústeres multiinquilino, en particular, están en riesgo de sufrir ataques, ya que esta vulnerabilidad podría permitir que un inquilino vea el tráfico de otro si los usuarios tienen permiso para crear ClusterIPs o aplicar parches a los servicios LoadBalancer.
Snyk Infrastructure as Code proporciona comentarios de seguridad durante tu proceso de desarrollo de Kubernetes al analizar tus archivos de configuración de Kubernetes en busca de problemas de seguridad. Así, puedes mantener segura tu infraestructura mientras escribes tus definiciones. Publicamos regularmente nuevas reglas de seguridad, basadas en prácticas de seguridad recomendadas y en nuestras propias investigaciones. Para abordar esta vulnerabilidad, publicamos una nueva regla de seguridad, El servicio usa una IP externa, que te indica si tus entornos de Kubernetes podrían ser vulnerables a CVE-2020-8554.
En el ejemplo siguiente, detectamos el uso de externalIPs, lo que indica que esta implementación en particular podría ser vulnerable a este CVE. La solución alternativa recomendada es eliminar por completo el uso de externalIPs. Puedes validar el cambio necesario y volver a analizar el archivo para comprobar que el problema se haya resuelto.

Snyk IaC detecta CVE-2020-8554 en la configuración de un servicio de Kubernetes.
Si ya usas Snyk IaC, esta verificación está disponible y verás automáticamente los resultados de las configuraciones vulnerables en tu próxima prueba, ya sea desde los repositorios de Git importados o al ejecutar snyk iac test en la línea de comandos. Si aún no usas Snyk IaC, puedes empezar a usarlo gratis y revisar rápidamente tus definiciones de configuración de Kubernetes para saber si eres vulnerable.
Si Snyk IaC encuentra configuraciones que usan externalIPs, debes auditar su uso para determinar el riesgo. Si tus clústeres no son multiinquilino o restringiste los roles para que la mayoría de los usuarios no puedan usar ni modificar esta configuración, puedes optar por ignorar el resultado de Snyk IaC o ajustar la regla de Snyk IaC _El servicio usa una IP externa_ para reducir el nivel de gravedad. Si tus cargas de trabajo dependen de externalIPs y crees que sí estás en riesgo, puedes usar controladores de admisión o OPA Gatekeeper para restringir el uso de IP externas según listas CIDR.
Recursos adicionales:
Para saber qué tan segura es tu configuración de Kubernetes y si eres vulnerable a este problema, empieza a usar Snyk gratis.
Protege la infraestructura desde el origen
Snyk automatiza la seguridad y el cumplimiento de IaC en los flujos de trabajo, y detecta recursos con desviaciones de configuración y recursos faltantes.