Nota perev. : Si se está preguntando acerca de la seguridad en una infraestructura basada en Kubernetes, esta excelente revisión de Sysdig será un excelente punto de partida para un vistazo rápido de las soluciones actualizadas. Incluye sistemas integrados de actores conocidos del mercado y utilidades mucho más modestas que cierran este o aquel problema. Y en los comentarios, como siempre, estaremos encantados de conocer su experiencia en el uso de estas herramientas y ver enlaces a otros proyectos.Productos de software de seguridad de Kubernetes ... hay tantos, y cada uno tiene sus propios objetivos, alcance y licencias.
Es por eso que decidimos crear esta lista e incluirla tanto en proyectos abiertos como en plataformas comerciales de diferentes proveedores. Esperamos que lo ayude a elegir los que sean de mayor interés y se envíen en la dirección correcta, según las necesidades de seguridad específicas de Kubernetes.
Categorias
Para simplificar la navegación por la lista, las herramientas se dividen en funciones principales y áreas de aplicación. Las siguientes secciones han resultado:
- Escaneo de imágenes Kubernetes y análisis estático;
- Tiempo de ejecución de seguridad;
- Kubernetes Network Security;
- Difusión de imágenes y gestión de secretos;
- Auditoría de seguridad de Kubernetes;
- Productos comerciales integrales.
Empecemos a trabajar:
Escaneo de imágenes de Kubernetes
Anchore
- Sitio web: anchore.com
- Licencia: gratis (Apache) y oferta comercial

El paquete Anchore analiza las imágenes del contenedor y le permite realizar comprobaciones de seguridad basadas en políticas definidas por el usuario.
Además del escaneo habitual de imágenes de contenedores para detectar vulnerabilidades conocidas de la base de datos CVE, Anchore realiza muchas verificaciones adicionales como parte de la política de escaneo: verifica Dockerfile, fugas de credenciales, paquetes de lenguajes de programación usados (npm, maven, etc.), licencias de software y mucho más .
Clair
- Sitio web: coreos.com/clair (ahora bajo la custodia de Red Hat)
- Licencia: gratis (Apache)

Clair fue uno de los primeros proyectos de código abierto para escanear imágenes. Es ampliamente conocido como el escáner de seguridad subyacente al registro de imágenes Quay
(también de CoreOS - aprox. Transl. ) . Clair puede recopilar información de CVE de una amplia gama de fuentes, incluidas listas de vulnerabilidades específicas de Linux que mantienen los equipos de seguridad de Debian, Red Hat o Ubuntu.
A diferencia de Anchore, Clair se ocupa principalmente de la búsqueda de vulnerabilidades y el mapeo de datos a CVE. Sin embargo, el producto ofrece a los usuarios algunas opciones para ampliar las funciones utilizando controladores de complemento.
Dagda

Dagda realiza un análisis estático de imágenes de contenedores para detectar vulnerabilidades conocidas, troyanos, virus, malware y otras amenazas.
De otras herramientas similares, el paquete Dagda se distingue por dos características notables:
- Se integra perfectamente con ClamAV , actuando no solo como una herramienta para escanear imágenes de contenedores, sino también como un antivirus.
- También proporciona protección en tiempo de ejecución al recibir eventos en tiempo real del demonio Docker e integrarse con Falco (ver más abajo) para recopilar eventos de seguridad mientras el contenedor se está ejecutando.
Kubexray

KubeXray "escucha" los eventos del servidor API de Kubernetes y utiliza metadatos de JFrog Xray para garantizar que solo se inicien los pods que coincidan con la política actual.
KubeXray no solo audita los contenedores nuevos o actualizados en la implementación (similar al controlador de admisión en Kubernetes), sino que también verifica dinámicamente el cumplimiento de las nuevas políticas de seguridad de los contenedores de trabajo, eliminando recursos que hacen referencia a imágenes vulnerables.
Snyk
- Sitio web: snyk.io
- Licencia: gratis (Apache) y versiones comerciales

Snyk es un escáner de vulnerabilidad inusual en el sentido de que apunta específicamente al proceso de desarrollo y se promueve como una "solución indispensable" para los desarrolladores.
Snyk se conecta directamente a los repositorios de código, analiza el manifiesto del proyecto y analiza el código importado junto con las dependencias directas e indirectas. Snyk admite muchos lenguajes de programación populares y puede detectar riesgos de licencia ocultos.
Trivy

Trivy es un escáner de vulnerabilidad de contenedor simple pero potente que se puede integrar fácilmente en una tubería de CI / CD. Su característica notable es la facilidad de instalación y operación: la aplicación consta de un solo binario y no requiere la instalación de una base de datos o bibliotecas adicionales.
La desventaja de la simplicidad de Trivy es que tiene que descubrir cómo analizar y enviar los resultados en formato JSON para que otras herramientas de seguridad de Kubernetes puedan usarlos.
Seguridad de tiempo de ejecución de Kubernetes
Falco
- Sitio web: falco.org
- Licencia: gratis (Apache)

Falco es un conjunto de herramientas de tiempo de ejecución de seguridad en la nube. Forma parte de la
familia de proyectos
CNCF .
Utilizando las herramientas de Sysdig para trabajar a nivel del kernel de Linux y crear perfiles de llamadas al sistema, Falco le permite sumergirse profundamente en el comportamiento del sistema. Su motor de reglas de tiempo de ejecución es capaz de detectar actividad sospechosa en aplicaciones, contenedores, host base y orquesta de Kubernetes.
Falco proporciona total transparencia en el trabajo en tiempo de ejecución y la detección de amenazas mediante la instalación de agentes especiales en los sitios de Kubernetes para estos fines. Como resultado, no hay necesidad de modificar contenedores incrustando código de terceros en ellos o colgando contenedores de sidecar.
Marcos de seguridad de Linux para tiempo de ejecución

Estos marcos de kernel de Linux nativos no son "herramientas de seguridad de Kubernetes" en el sentido habitual, pero son dignos de mención porque son un elemento importante en el contexto de seguridad en tiempo de ejecución, que se incluye en la Política de seguridad de pod de Kubernetes (PSP).
AppArmor conecta el perfil de seguridad a los procesos que se ejecutan en el contenedor, definiendo privilegios del sistema de archivos, reglas de acceso a la red, conectando bibliotecas, etc. Este es un sistema basado en control de acceso obligatorio (MAC). En otras palabras, impide la ejecución de acciones prohibidas.
Security-Enhanced Linux (
SELinux ) es un módulo de seguridad avanzado en el kernel de Linux, en algunos aspectos similar a AppArmor y a menudo comparado con él. SELinux es superior a AppArmor en configuraciones de potencia, flexibilidad y sutileza. Sus desventajas son un largo desarrollo y una mayor complejidad.
Seccomp y seccomp-bpf le permiten filtrar las llamadas al sistema, bloquear la ejecución de aquellas que son potencialmente peligrosas para el sistema operativo subyacente y que no son necesarias para el funcionamiento normal de las aplicaciones del usuario. Seccomp en algunos puntos es similar a Falco, aunque no conoce los detalles de los contenedores.
Código abierto de Sysdig

Sysdig es una herramienta completa para analizar, diagnosticar y depurar sistemas Linux (también funciona en Windows y macOS, pero con características limitadas). Se puede utilizar para recopilar información detallada, verificación y
análisis forense criminal
del sistema base y de cualquier contenedor que se ejecute en él.
Sysdig también admite de forma nativa tiempos de ejecución de contenedores y metadatos de Kubernetes, agregando dimensiones y etiquetas adicionales a toda la información recopilada sobre el comportamiento del sistema. Hay varias formas de analizar el clúster de Kubernetes usando Sysdig: puede capturar en un punto específico en el tiempo a través de la
captura de kubectl, o puede ejecutar una interfaz interactiva basada en ncurses usando el
complemento de excavación kubectl .
Seguridad de red de Kubernetes
Aporeto

Aporeto ofrece "seguridad separada de la red y la infraestructura". Esto significa que los servicios de Kubernetes no solo reciben una ID local (es decir, ServiceAccount en Kubernetes), sino también un identificador / huella digital universal que se puede utilizar para verificar de forma segura y mutua la interacción con cualquier otro servicio, por ejemplo, en un clúster OpenShift.
Aporeto puede generar un identificador único no solo para Kubernetes / contenedores, sino también para hosts, funciones en la nube y usuarios. Dependiendo de estos identificadores y del conjunto de reglas de seguridad de red establecidas por el administrador, se permitirán o bloquearán las comunicaciones.
Calico

Calico generalmente se implementa durante la instalación del orquestador de contenedores, lo que le permite crear una red virtual que conecta contenedores. Además de esta funcionalidad de red básica, el proyecto Calico funciona con las políticas de red de Kubernetes y su propio conjunto de perfiles de seguridad de red, admite ACL de punto final (listas de control de acceso) y reglas de seguridad de red basadas en anotaciones para el tráfico de entrada y salida.
Cilio

Cilium actúa como un firewall de contenedor y proporciona características de seguridad de red originalmente adaptadas a Kubernetes y cargas de trabajo de microservicios. Cilium utiliza una nueva tecnología de kernel de Linux llamada BPF (Berkeley Packet Filter) para filtrar, monitorear, redirigir y ajustar datos.
Cilium puede implementar políticas de acceso a la red basadas en contenedores utilizando etiquetas y metadatos de Docker o Kubernetes. Cilium también comprende y filtra varios protocolos de capa 7, como HTTP o gRPC, lo que le permite definir un conjunto de llamadas REST que, por ejemplo, se permitirán entre dos implementaciones de Kubernetes.
Isstio
- Sitio web: istio.io
- Licencia: gratis (Apache)

Istio es ampliamente conocido como la implementación del paradigma de malla de servicios mediante la implementación de un plano de control independiente de la plataforma y la redirección de todo el tráfico de servicios administrados a través de servidores proxy Envoy configurados dinámicamente. Istio aprovecha esta vista avanzada de todos los microservicios y contenedores para implementar diversas estrategias de seguridad de red.
Las capacidades de seguridad de red de Istio incluyen cifrado TLS transparente para actualizar automáticamente el protocolo de comunicación entre microservicios a HTTPS y su propio sistema RBAC para identificación y autorización para habilitar / deshabilitar el intercambio de datos entre diferentes cargas de trabajo en el clúster.
Nota perev. : Lea más sobre las características orientadas a la seguridad de Istio en este artículo .Tigera

Esta solución, llamada Kubernetes Firewall, se centra en un enfoque de seguridad de red de confianza cero.
Al igual que otras soluciones de red nativas de Kubernetes, Tigera se basa en metadatos para identificar diversos servicios y objetos en el clúster y proporciona detección de problemas de tiempo de ejecución, cumplimiento continuo de la red y monitoreo de transparencia para infraestructuras en contenedores monolíticos híbridos o de múltiples nubes.
Trirreme

Trireme-Kubernetes es una implementación simple y directa de la especificación de políticas de red de Kubernetes. La característica más notable es que, a diferencia de los productos de seguridad de red de Kubernetes similares, no requiere un plano de control central para coordinar la malla. Esto hace que la solución sea trivialmente escalable. En Trireme, esto se logra instalando un agente en cada nodo que se conecta directamente a la pila TCP / IP del host.
Difusión de imágenes y gestión de secretos
Grafeas

Grafeas es una API de código abierto para auditar y administrar la cadena de suministro. En un nivel básico, Grafeas es una herramienta para recopilar metadatos y resultados de auditoría. Se puede utilizar para rastrear el cumplimiento de las mejores prácticas de seguridad en la organización.
Esta fuente centralizada de la verdad ayuda a responder preguntas como:
- ¿Quién ensambló y firmó el contenedor específico?
- ¿Ha pasado todos los escáneres de seguridad y las verificaciones de políticas de seguridad? Cuando ¿Cuáles fueron los resultados?
- ¿Quién lo desplegó en producción? ¿Qué parámetros se usaron durante la implementación?
En toto

In-toto es un marco diseñado para garantizar la integridad, autenticación y auditoría de toda la cadena de suministro de software. Al implementar In-toto en la infraestructura, primero se establece un plan que describe los diversos pasos en la tubería (repositorio, herramientas de CI / CD, herramientas de control de calidad, recolectores de artefactos, etc.) y usuarios (personas responsables) a quienes se les permite iniciarlos.
In-toto monitorea la implementación del plan, verificando que cada tarea en la cadena sea realizada exclusivamente por personal autorizado y que no se hayan realizado manipulaciones no autorizadas con el producto.
Portieris

Portieris es un controlador de admisión para Kubernetes; Se utiliza para verificaciones forzadas de confianza en el contenido. Portieris usa el servidor Notary
(escribimos sobre él al final de este artículo , aprox. Transl. ) Como una fuente de verdad para confirmar artefactos confiables y firmados (es decir, imágenes de contenedores aprobados).
Al crear o modificar una carga de trabajo en Kubernetes, Portieris descarga la información de firma y la política de confianza de contenido para las imágenes de contenedor solicitadas y, si es necesario, realiza cambios en el objeto API JSON sobre la marcha para lanzar versiones firmadas de estas imágenes.
Bóveda

Vault es una solución segura para almacenar información confidencial: contraseñas, tokens OAuth, certificados PKI, cuentas de acceso, secretos de Kubernetes, etc. Vault admite muchas funciones avanzadas, como alquilar fichas de seguridad efímeras u organizar la rotación de claves.
Utilizando el Helm Chart, Vault se puede implementar como una nueva implementación en un clúster de Kubernetes con Consul como repositorio de back-end. Admite recursos nativos de Kubernetes como tokens de ServiceAccount e incluso puede actuar como la tienda secreta predeterminada de Kubernetes.
Nota perev. : Por cierto, ayer, la compañía HashiCorp que desarrolla Vault anunció algunas mejoras para usar Vault en Kubernetes, y en particular se relacionan con la tabla Helm. Lea el blog del desarrollador para más detalles.Auditoría de seguridad de Kubernetes
Banco Kube

Kube-bench es una aplicación Go que comprueba si Kubernetes se implementa de forma segura ejecutando pruebas de la lista de
referencia de Kubernetes de CIS .
Kube-bench busca parámetros de configuración inseguros entre los componentes del clúster (etcd, API, administrador de controladores, etc.), permisos de archivos dudosos, cuentas inseguras o puertos abiertos, cuotas de recursos, configuraciones para limitar la cantidad de llamadas API para proteger contra Ataques DoS, etc.
Cazador de kube

Kube-hunter "busca" vulnerabilidades potenciales (como la ejecución remota de código o la divulgación de datos) en grupos de Kubernetes. Kube-hunter puede ejecutarse como un escáner remoto, en este caso, evaluará el clúster desde el punto de vista de un atacante externo, o como un pod dentro del clúster.
Una característica distintiva de Kube-hunter es el modo de "caza activa", durante el cual no solo informa problemas, sino que también trata de aprovechar las vulnerabilidades encontradas en el grupo objetivo que podrían dañar su trabajo. ¡Así que úsalo con precaución!
Kubeaudit

Kubeaudit es una herramienta de consola desarrollada originalmente por Shopify para auditar las configuraciones de Kubernetes para varios problemas de seguridad. Por ejemplo, ayuda a identificar contenedores que funcionan sin restricciones, con privilegios de superusuario, privilegios de abuso, o usan ServiceAccount de forma predeterminada.
Kubeaudit tiene otras características interesantes. Por ejemplo, puede analizar archivos YAML locales, identificar fallas de configuración que pueden conducir a problemas de seguridad y solucionarlos automáticamente.
Kubesec

Kubesec es una herramienta especial en el sentido de que escanea directamente los archivos YAML que describen los recursos de Kubernetes en busca de parámetros débiles que pueden afectar la seguridad.
Por ejemplo, puede detectar privilegios y permisos excesivos otorgados al pod, iniciar un contenedor con root como usuario predeterminado, conectarse al espacio de nombres de la red host o montajes peligrosos como
/proc
host o Docker socket. Otra característica interesante de Kubesec es su servicio de demostración en línea, donde puede descargar YAML y analizarlo de inmediato.
Agente de política abierto

El concepto de OPA (Open Policy Agent) es separar las políticas de seguridad y las mejores prácticas en el campo de la seguridad de una plataforma de tiempo de ejecución específica: Docker, Kubernetes, Mesosphere, OpenShift o cualquier combinación de las mismas.
Por ejemplo, puede implementar OPA como back-end para el controlador de admisión Kubernetes, delegándole soluciones de seguridad. De esta manera, el agente de OPA podrá verificar, rechazar e incluso modificar solicitudes sobre la marcha, asegurando el cumplimiento de la configuración de seguridad. Las políticas de seguridad en OPA están escritas en su propio lenguaje DSL, Rego.
Nota perev. : Escribimos más sobre OPA (y SPIFFE) en este artículo .Herramientas integrales de análisis de seguridad de Kubernetes
Decidimos crear una categoría separada para plataformas comerciales, ya que, por regla general, cubren varias áreas de seguridad a la vez. Una idea general de sus capacidades se puede obtener de la tabla:
* Examen avanzado y análisis post mortem con captura completa de llamadas al sistema .Seguridad acuática

Esta herramienta comercial está diseñada para contenedores y cargas de trabajo en la nube. Proporciona:
- Escaneo de imágenes integrado con el registro de contenedores o la canalización de CI / CD;
- Protección de tiempo de ejecución con la búsqueda de cambios en contenedores y otras actividades sospechosas;
- Firewall de contenedor nativo;
- Seguridad para servicios sin servidor en la nube;
- Cumplimiento y auditoría combinados con registro de eventos.
Nota perev. : También vale la pena señalar que también hay un componente gratuito del producto llamado MicroScanner , que permite escanear imágenes de contenedores en busca de vulnerabilidades. En esta tabla se presenta una comparación de sus capacidades con versiones pagas.Cápsula8

Capsule8 se integra en la infraestructura instalando el detector en un clúster Kubernetes local o en la nube. Este detector recoge la telemetría del host y la red, correlacionándola con varios tipos de ataques.
El equipo de Capsule8 lo ve como su detección temprana y prevención de ataques que utilizan vulnerabilidades nuevas
(0 días) . Capsule8 puede descargar reglas de seguridad actualizadas directamente a los detectores en respuesta a amenazas y vulnerabilidades de software recientemente descubiertas.
Cavirina

La cavirina actúa como contraparte en el lado de la compañía para varios departamentos involucrados en estándares de seguridad. No solo puede escanear imágenes, sino también integrarse en una tubería CI / CD, bloqueando imágenes que no cumplen con los estándares, antes de que entren en repositorios cerrados.
Cavirin Security Suite utiliza el aprendizaje automático para evaluar la ciberseguridad y ofrece consejos para aumentar la seguridad y mejorar el cumplimiento de los estándares de seguridad.
Centro de comando de Google Cloud Security

Cloud Security Command Center ayuda a los equipos de seguridad a recopilar datos, identificar amenazas y eliminarlas antes de que dañen a la empresa.
Como su nombre lo indica, Google Cloud SCC es un panel de control unificado en el que puede integrar varios informes de seguridad, mecanismos de contabilidad de activos y sistemas de seguridad de terceros, y administrarlos desde una única fuente centralizada.
La API interoperable que ofrece Google Cloud SCC facilita la integración de eventos de seguridad de una variedad de fuentes, como Sysdig Secure (seguridad de contenedores para aplicaciones nativas de la nube) o Falco (seguridad de código abierto en tiempo de ejecución).
Insight en capas (Qualys)

Layer Insight (ahora parte de Qualys Inc) se basa en el concepto de "seguridad integrada". Después de escanear la imagen original en busca de vulnerabilidades utilizando métodos de análisis estadísticos y realizando comprobaciones CVE, Layered Insight la reemplaza con una imagen instrumentada que incluye un agente en forma de binario.
Este agente contiene pruebas de seguridad en tiempo de ejecución para analizar el tráfico de red del contenedor, los flujos de E / S y la actividad de la aplicación. Además, puede realizar comprobaciones de seguridad adicionales definidas por el administrador de la infraestructura o los equipos de DevOps.
Neuvector

NeuVector realiza comprobaciones de seguridad del contenedor y brinda protección en tiempo de ejecución al analizar la actividad de la red y el comportamiento de la aplicación, creando un perfil de seguridad individual para cada contenedor. También puede bloquear amenazas de forma independiente, aislando la actividad sospechosa al cambiar las reglas del firewall local.
Network Integration NeuVector, conocido como Security Mesh, es capaz de analizar y filtrar paquetes en profundidad en el 7 ° nivel para todas las conexiones de red en la malla de servicios.
Stackrox

StackRox Container Security Platform se esfuerza por cubrir todo el ciclo de vida de las aplicaciones de Kubernetes en un clúster. Al igual que otras plataformas comerciales en esta lista, StackRox genera un perfil de tiempo de ejecución basado en el comportamiento observado del contenedor y automáticamente suena una alarma por cualquier desviación.
Además, StackRox analiza las configuraciones de Kubernetes utilizando CIS Kubernetes y otros libros de reglas para evaluar el cumplimiento del contenedor.
Sysdig seguro

Sysdig Secure protege las aplicaciones en todo el ciclo de vida del contenedor y Kubernetes.
Escanea imágenes de contenedores, proporciona
protección en tiempo de ejecución de acuerdo con los datos de aprendizaje automático y realiza delitos. examen para identificar vulnerabilidades, bloquear amenazas, supervisar el
cumplimiento de los estándares establecidos y auditar la actividad en microservicios.
Sysdig Secure se integra con herramientas de CI / CD como Jenkins y monitorea imágenes descargadas de los registros de Docker, evitando que aparezcan imágenes peligrosas en producción. También proporciona seguridad integral en tiempo de ejecución, que incluye:
- Perfiles de tiempo de ejecución basados en ML y detección de anomalías
- políticas de tiempo de ejecución basadas en eventos del sistema, la API de auditoría K8s, proyectos comunitarios conjuntos (FIM - monitoreo de integridad de archivos; cryptojacking) y MITER ATT & CK ;
- respuesta y eliminación de incidencias.
Seguridad de contenedor sostenible

Antes de la llegada de los contenedores, Tenable era ampliamente conocido en la industria como la compañía que desarrolló Nessus, una herramienta popular para buscar vulnerabilidades y auditorías de seguridad.
Tenable Container Security utiliza su experiencia en seguridad informática para integrar la canalización de CI / CD con bases de datos de vulnerabilidades, paquetes especializados de detección de malware y recomendaciones para resolver riesgos de seguridad.
Twistlock (Redes de Palo Alto)

Twistlock se promociona como una plataforma enfocada en servicios y contenedores en la nube. Twistlock admite varios proveedores de nube (AWS, Azure, GCP), orquestadores de contenedores (Kubernetes, Mesospehere, OpenShift, Docker), tiempos de ejecución sin servidor, frameworks de malla y herramientas de CI / CD.
Además de los métodos de seguridad comunes de nivel empresarial, como la integración en una canalización de CI / CD o escaneo de imágenes, Twistlock utiliza el aprendizaje automático para generar patrones de comportamiento y reglas de red que tienen en cuenta las características de los contenedores.
Hace algún tiempo, Twistlock fue comprado por Palo Alto Networks, propietaria de los proyectos Evident.io y RedLock. Todavía no se sabe exactamente cómo se integrarán estas tres plataformas en
PRISMA desde Palo Alto.
¡Ayuda a crear el mejor catálogo de herramientas de seguridad de Kubernetes!
Nos esforzamos por hacer que este catálogo sea lo más completo posible, ¡y para esto necesitamos su ayuda! Comuníquese con nosotros (
@sysdig ) si tiene una herramienta genial digna de inclusión en esta lista, o si encuentra un error / información desactualizada.
También puede suscribirse a nuestro
boletín mensual con noticias e historias del ecosistema nativo de la nube sobre proyectos interesantes del mundo de la seguridad de Kubernetes.
PD del traductor
Lea también en nuestro blog: