En esta página, se describe el análisis de posturas de seguridad de Kubernetes, una función del panel de postura de seguridad que te ayuda a identificar y abordar de forma proactiva las vulnerabilidades de seguridad en tus clústeres de Google Kubernetes Engine (GKE). En esta página, se explica la auditoría de la configuración de la carga de trabajo, la publicación de boletines de seguridad y el análisis de detección de amenazas para supervisar las vulnerabilidades y mitigar los riesgos de seguridad en GKE.
Esta página está destinada a especialistas en seguridad que supervisan los clústeres en busca de problemas de seguridad. Si comprendes el panel de postura de seguridad, puedes tomar decisiones fundamentadas sobre tus parámetros de configuración de seguridad y aprender a aprovechar al máximo sus funciones avanzadas para la detección de amenazas y la administración de vulnerabilidades. Para obtener más información sobre los roles comunes y las tareas de ejemplo a las que hacemos referencia en el contenido de Google Cloud , consulta Tareas y roles comunes de los usuarios de GKE Enterprise.
Para habilitar y usar el análisis de posturas de seguridad de Kubernetes, consulta los siguientes recursos:
- Audita las cargas de trabajo automáticamente en busca de problemas de configuración
- Solo para GKE Enterprise: Encuentra amenazas en clústeres con la detección de amenazas de GKE (versión preliminar)
El análisis de posturas de seguridad de Kubernetes proporciona las siguientes funciones:
- Nivel Estándar
- Nivel Avanzado (solo GKE Enterprise)
Precios
- Nivel estándar: Se ofrece sin cargo adicional en GKE.
- Nivel Avanzado: Se incluye en GKE Enterprise.
Las entradas que se agregan a Cloud Logging están sujetas a los precios de Cloud Logging.
Acerca de la auditoría de configuración de las cargas de trabajo
Las cargas de trabajo que implementas en GKE deben tener una configuración endurecida que limite su superficie de ataque. Puede ser difícil verificar manualmente a gran escala las cargas de trabajo en los clústeres para detectar problemas de configuración. Puedes usar el panel de postura de seguridad para auditar de forma automática la configuración de todas las cargas de trabajo en ejecución en varios clústeres y mostrar resultados prácticos y puntuados y recomendaciones bien definidas a fin de mejorar tu postura de seguridad.
La auditoría de configuración de las cargas de trabajo compara cada carga de trabajo implementada con un subconjunto de políticas en los Estándares de seguridad de Pods. La auditoría de la configuración de la carga de trabajo se realiza en la infraestructura de Google y no usa recursos de procesamiento en tus nodos.
Beneficios de la auditoría de configuración de las cargas de trabajo
- Automatiza la detección de los problemas de configuración conocidos en todas las cargas de trabajo.
- Obtén recomendaciones prácticas para mejorar la postura de seguridad.
- Usa la consola de Google Cloud para obtener una vista de alto nivel de los problemas de configuración.
- Usa Logging para obtener un registro auditable de problemas sobre mejores informes y observabilidad.
Cómo funciona la auditoría de configuración de las cargas de trabajo
Para cada carga de trabajo implementada apta, GKE analiza de forma continua la especificación de la carga de trabajo y compara los campos y valores con los controles definidos en la política de seguridad subyacente. Por ejemplo, un Pod con spec.containers.securityContext.privileged=true
infringe el estándar de seguridad de Pods Referencia y un Pod con el campo spec.securityContext.runAsNonRoot
configurado como false
infringe el estándar Restringido. Para obtener una lista de las políticas de seguridad que GKE verifica, consulta ¿Qué verifica la auditoría de la configuración de las cargas de trabajo?.
Después de analizar y descubrir problemas, GKE califica la gravedad de los problemas de configuración descubiertos en función de las medidas de endurecimiento de seguridad integradas. GKE asigna una clasificación de gravedad que puede informar la velocidad con la que respondes al problema. La consola de Google Cloud muestra los resultados y las acciones recomendadas que puedes realizar para solucionar los problemas. GKE también agrega entradas a Cloud Logging para el seguimiento y la auditoría.
¿Qué verifica la auditoría de la configuración de las cargas de trabajo?
Problema | Campos | Valores permitidos | Gravedad |
---|---|---|---|
Espacios de nombres de host Los Pods que comparten espacios de nombres de host permiten que los procesos de Pods se comuniquen con los procesos del host y recopilen información del host, lo que podría provocar un escape del contenedor. |
|
|
Alta |
Contenedores privilegiados Los contenedores con privilegios proporcionan acceso casi ilimitado al host. Comparten espacios de nombres con el host y no tienen restricciones de grupo de control, seccomp, AppArmor ni de capacidad. |
|
|
Alta |
Acceso al puerto del host Exponer un puerto de host a un contenedor podría permitir que el contenedor intercepte el tráfico de red a un servicio host mediante ese puerto o que omita las reglas de control de acceso a la red, como las reglas en una NetworkPolicy. |
|
|
Alta |
Funciones no predeterminadas Un contenedor tiene capacidades asignadas que podrían permitir escapes. |
|
|
Media |
Activación de volúmenes de ruta de acceso del host Los volúmenes |
spec.volumes[*].hostPath |
Indefinido o nulo | Media |
Máscara El tipo de activación |
|
|
Media |
Máscara de sysctls no segura Se puede configurar un Pod para permitir la modificación de parámetros de kernel no seguros a través del sistema de archivos virtuales |
spec.securityContext.sysctls[*].name |
|
Media |
Ejecución como no raíz Puedes permitir de forma explícita que un contenedor se ejecute como usuario raíz si |
|
true |
Media |
Elevación de privilegios Se puede configurar un contenedor de forma explícita para permitir la elevación de privilegios en la ejecución. Esto permite que un proceso creado dentro del contenedor ejecute un ejecutable set-user-id, set-group-id o de capacidad de archivo para obtener los privilegios que especifica el ejecutable. La falta de control de seguridad preventivo aumenta el riesgo de escape del contenedor. |
|
false |
Media |
Perfil de AppArmor sin confirmar AppArmor puede configurar explícitamente un contenedor para que sea unconfined. Esto garantiza que no se aplique ningún perfil de AppArmor al contenedor y, por lo tanto, no esté restringido por ellos. Inhabilitar el control de seguridad preventivo aumenta el riesgo de escape del contenedor. |
metadata.annotations["container.apparmor.security.beta.kubernetes.io/*"] |
false |
Bajo |
Además, GKE busca RoleBindings o ClusterRoleBindings de RBAC que hagan referencia a uno de los siguientes usuarios o grupos:
system:anonymous
system:authenticated
system:unauthenticated
Si existen vinculaciones de RBAC que hagan referencia a estos usuarios o grupos, aparecerá un hallazgo llamado Se otorgó acceso al clúster de GKE a usuarios anónimos con una gravedad de Media en el panel de estado de seguridad. Estos usuarios y grupos son, en realidad, anónimos y no deben usarse en RoleBindings ni ClusterRoleBindings. Para obtener más información, consulta Evita los roles y los grupos predeterminados.
Información sobre el boletín de seguridad
Cuando se descubre una vulnerabilidad en GKE, le aplicamos un parche y publicamos un boletín de seguridad para esta. Para obtener información sobre la identificación, los parches y los cronogramas, consulta Parches de seguridad de GKE.
El panel de postura de seguridad muestra boletines de seguridad que afectan a tus clústeres, cargas de trabajo y grupos de nodos del modo estándar. Esta característica forma parte de la función de postura de seguridad de Kubernetes del panel de postura de seguridad y se habilita de forma automática cuando creas un clúster de Autopilot o Standard. Para habilitar el análisis de postura de seguridad de Kubernetes, usa las instrucciones en Audita las cargas de trabajo de forma automática para detectar problemas de configuración.
La consola de Google Cloud muestra detalles como clústeres afectados, versiones y versiones de parche recomendadas para actualizaciones a fin de mitigar la vulnerabilidad. Solo verás los boletines para los que hay una mitigación disponible en la región o zona Google Cloud de tu clúster.
Para ver los boletines de los clústeres que inscribiste en el análisis de posiciones de seguridad de Kubernetes, ve al panel de posiciones de seguridad:
Los boletines disponibles que afectan tu entorno aparecen en la sección Boletines de seguridad.
Acerca de la detección de amenazas de GKE
La detección de amenazas de GKE analiza los registros de auditoría de tus clústeres inscritos en busca de amenazas activas y proporciona acciones de mitigación recomendadas. La detección de amenazas de GKE cuenta con la tecnología del servicio Event Threat Detection de Security Command Center. Para obtener más información, consulta Acerca de la detección de amenazas de GKE en la documentación de GKE Enterprise.
¿Qué sigue?
- Obtén más información sobre el panel de postura de seguridad.
- Aprende a implementar la auditoría de configuración de las cargas de trabajo.
- Aprende a configurar el análisis automático de vulnerabilidades de las imágenes de contenedores.