Configuración de Microsoft Defender para contenedores para la seguridad de la carga de trabajo
14/04/2025
Este artículo técnico y educativo tiene como objetivo guiar a los analistas de seguridad, administradores de TI e ingenieros de sistemas en la configuración y optimización de Microsoft Defender para contenedores para proteger cargas de trabajo basadas en contenedores. En un escenario donde la adopción de contenedores y orquestadores como Kubernetes está aumentando, la seguridad de estos entornos se vuelve compleja y crucial. Defender for Containers ofrece una solución nativa de la nube para mejorar, monitorear y mantener la seguridad de sus activos en contenedores desde el desarrollo hasta la producción [1].
Introducción
Los contenedores han revolucionado la forma en que se desarrollan, implementan y administran las aplicaciones, ofreciendo portabilidad, escalabilidad y eficiencia. Sin embargo, la naturaleza dinámica y distribuida de los entornos de contenedores, especialmente cuando están orquestados por plataformas como Kubernetes (Azure Kubernetes Service - AKS, por ejemplo), introduce nuevos desafíos de seguridad. Las vulnerabilidades en las imágenes de contenedores, las configuraciones erróneas del orquestador, el acceso no autorizado al tiempo de ejecución y las amenazas a la cadena de suministro de software son solo algunos de los riesgos que enfrentan las organizaciones [2].
Microsoft Defender for Containers, parte de Microsoft Defender for Cloud, es una solución integral de protección de cargas de trabajo en la nube (CWPP) que se integra perfectamente con Azure y otros entornos multinube. Proporciona capacidades de seguridad durante todo el ciclo de vida del contenedor, que incluyen: evaluación de vulnerabilidades sin agentes para imágenes de contenedores en el registro y en tiempo de ejecución; protección en tiempo de ejecución para clústeres de Kubernetes, detectando actividades y ataques sospechosos; y monitoreo de amenazas en tiempo real para cargas de trabajo en contenedores. Esto ayuda a identificar y remediar vulnerabilidades, proteger contra ataques y garantizar el cumplimiento [3].
Esta guía práctica cubrirá la habilitación de Defender para contenedores en el nivel de suscripción, la integración con clústeres de Kubernetes (centrándose en AKS como ejemplo), la configuración de alertas de seguridad y la exploración de sus capacidades de evaluación de vulnerabilidades y protección en tiempo de ejecución. Se proporcionarán instrucciones paso a paso, ejemplos prácticos y explicaciones concisas para que el lector pueda implementar, probar y validar estas características. Además, se analizarán consejos de seguridad, verificación de cumplimiento y mejores prácticas para garantizar que sus cargas de trabajo en contenedores estén protegidas contra las últimas amenazas de manera autónoma, profesional y confiable.
¿Por qué es crucial Microsoft Defender para contenedores?
- Visibilidad integral: proporciona una vista unificada de la situación de seguridad de sus entornos de contenedores, incluidos los clústeres de Kubernetes, los registros de contenedores y las imágenes.
- Evaluación de vulnerabilidad: analiza imágenes de contenedores en registros (Azure Container Registry, Docker Hub, etc.) y en tiempo de ejecución para identificar vulnerabilidades y proporcionar recomendaciones prácticas.
- Protección en tiempo de ejecución: monitorea continuamente la actividad en los clústeres de Kubernetes para detectar actividades sospechosas, como ejecutar comandos privilegiados, acceder a datos confidenciales, comunicarse con IP maliciosas y otras anomalías.
- Monitoreo continuo: proporciona detección de amenazas y alertas de seguridad en tiempo real para ayudar a los equipos a responder rápidamente a los incidentes.
- Integración nativa: se integra perfectamente con Azure Kubernetes Service (AKS), Azure Container Registry (ACR) y otras herramientas del ecosistema de Azure.
- Soporte multinube/híbrido: amplía la protección a los clústeres de Kubernetes alojados en AWS, GCP y entornos locales a través de Azure Arc.
Requisitos previos
Para configurar Microsoft Defender para contenedores, necesitará los siguientes elementos:
- Suscripción activa de Azure: una suscripción de Azure para crear y administrar recursos.
- Acceso administrativo: una cuenta con el rol de "Propietario", "Colaborador" o "Administrador de seguridad" en la suscripción o grupo de recursos donde se encuentran los clústeres de Kubernetes.
- Clústeres de Kubernetes existentes: clústeres de Azure Kubernetes Service (AKS) u otros clústeres de Kubernetes (a través de Azure Arc) que desee proteger.
- Registros de contenedores (opcional): Registro de contenedores de Azure(ACR) u otros registros de contenedores para evaluar las vulnerabilidades de las imágenes.
Paso a paso: configurar Microsoft Defender para contenedores
Habilitemos Defender para contenedores y configuremos sus funciones.
1. Habilitación de Defender para contenedores en el nivel de suscripción
La mejor práctica es habilitar Defender for Containers en el nivel de suscripción para proteger automáticamente todos los clústeres y registros de contenedores de Kubernetes existentes y futuros.
- Abra su navegador y navegue hasta el portal de Azure:
https://portal.azure.com. - Inicie sesión con una cuenta que tenga los permisos necesarios.
- En el campo de búsqueda superior, escriba "Microsoft Defender para la nube" y selecciónelo de los resultados.
- En el panel de navegación izquierdo de Defender for Cloud, seleccione Configuración del entorno.
- Seleccione la suscripción donde desea habilitar Defender para contenedores.
-
En la página de planes de Defender, busque "Contenedores" y cambie el estado a "Habilitado".
-
Haga clic en "Configuración" del plan Contenedores para revisar las opciones avanzadas.
- Asegúrese de que la "Evaluación de vulnerabilidad del registro de contenedores" y la "Protección en tiempo de ejecución para clústeres de Kubernetes" estén "habilitadas".
-
Haga clic en Guardar.
- Explicación: Habilitar Defender para contenedores en el nivel de suscripción garantiza que todos los clústeres de AKS y registros ACR dentro de esa suscripción (existentes y nuevos) estén protegidos. Para los clústeres de Kubernetes en otras nubes o en las instalaciones, se requiere la integración a través de Azure Arc.
2. Verificación de la implementación y los componentes de Defender for Containers
Tras la activación, Defender for Containers implementa agentes y extensiones en clústeres de Kubernetes para recopilar datos y aplicar protección.
- En Azure Portal, navegue hasta su clúster de AKS.
- En el panel de navegación izquierdo, en "Monitoreo", seleccione Insights.
- Compruebe si la supervisión está habilitada. Defender for Containers usa Azure Monitor para recopilar registros y eventos.
- En el panel de navegación izquierdo de Defender for Cloud, seleccione Inventario.
- Filtre por
Tipo de recurso=Clústeres de KubernetesyRegistros de contenedor. Debería ver sus recursos enumerados y protegidos por Defender for Containers.
3. Evaluación de la vulnerabilidad de la imagen del contenedor
Defender for Containers escanea automáticamente imágenes en sus registros de contenedores en busca de vulnerabilidades.
- En el panel de navegación izquierdo de Defender for Cloud, seleccione Recomendaciones.
- Filtrar por
Tipo de recurso=Registros de contenedor. - Busque recomendaciones relacionadas con "Las vulnerabilidades en las imágenes de registro de contenedores deben parchearse".
-
Haga clic en una recomendación para ver los detalles, incluidas las imágenes afectadas, las vulnerabilidades encontradas (CVE) y los pasos de solución.
- Explicación: Defender for Containers utiliza análisis de vulnerabilidades e inteligencia de amenazas de Microsoft (como Qualys) para identificar problemas. Las recomendaciones suelen incluir la versión parcheada de la imagen o los paquetes que se actualizarán.
4. Monitoreo y protección del tiempo de ejecución para clústeres de Kubernetes
Defender for Containers monitorea la actividad en sus clústeres de Kubernetes para detectar amenazas en tiempo real.
- En el panel de navegación izquierdo de Defender for Cloud, seleccione Alertas de seguridad.
- Filtre por
Tipo de recurso=Clústeres de Kubernetes. -
Aquí verá alertas generadas por Defender for Containers sobre actividad sospechosa en el clúster, como por ejemplo:
Se intentó acceder a un servidor Kubernetes con privilegios elevados.Implementación de contenedores privilegiados.Comando de Shell ejecutado en un contenedor. *Comunicación con IP maliciosa de un contenedor.
-
Haga clic en una alerta para ver los detalles, incluida la descripción de la amenaza, los recursos afectados, los pasos de la investigación y las acciones correctivas recomendadas.
Validación y pruebas
Es fundamental probar la capacidad de Defender for Containers para detectar amenazas y generar alertas.
1. Prueba de detección de vulnerabilidades de imágenes
- Escenario: Implemente una imagen de contenedor con vulnerabilidades conocidas en su registro ACR (si tiene uno) o en un clúster de AKS. Por ejemplo, una imagen antigua de Docker de un servidor web o una aplicación con dependencias obsoletas.
*VPuede utilizar una imagen como
vulnerable/web-dvwa(para fines de prueba) o una imagen basada en una versión antigua de un sistema operativo (por ejemplo,ubuntu:16.04). - Acción esperada: Defender for Containers debería detectar vulnerabilidades en la imagen y generar recomendaciones de seguridad.
- Verificación:
- En Azure Portal, navegue hasta Microsoft Defender para la nube > Recomendaciones.
- Busque recomendaciones relacionadas con vulnerabilidades en imágenes de contenedores que apunten a la imagen que implementó.
2. Prueba de protección en tiempo de ejecución (simulación de actividad maliciosa en el clúster de AKS)
Atención: Realizar esta prueba en un entorno de desarrollo o prueba aislado, nunca en producción y con la debida autorización. Simular actividad maliciosa puede tener consecuencias no deseadas.
- Escenario: implemente un pod en su clúster de AKS e intente ejecutar un comando privilegiado o una actividad sospechosa dentro del contenedor. Por ejemplo, intente montar el directorio raíz del host o ejecutar un comando de escaneo de red.
- Ejemplo de implementación de pod privilegiado (para pruebas):
```yaml
Versión api: v1
tipo: vaina
metadatos:
nombre: prueba-pod-privilegiada
especificación:
contenedores:
- nombre: ubuntu imagen: ubuntu:último comando: ["dormir", "3600"] contexto de seguridad: privilegiado: verdadero hostPID: verdadero redhost: verdadero hostIPC: verdadero ```
- Comando para aplicar a AKS:
kubectl apply -f privilegiod-pod-test.yaml
- Ejemplo de ejecución de comando sospechoso dentro de un contenedor (después de implementar un pod normal):
golpecito kubectl exec -it <pod_name> -- bash # Dentro del contenedor, intenta ejecutar algo como: actualización apta && instalación apta -y nmap servidor local nmap
- Ejemplo de implementación de pod privilegiado (para pruebas):
```yaml
Versión api: v1
tipo: vaina
metadatos:
nombre: prueba-pod-privilegiada
especificación:
contenedores:
- Acción esperada: Defender for Containers debería detectar actividad sospechosa (por ejemplo, implementación de contenedores privilegiados, ejecución de herramientas de análisis) y generar una alerta de seguridad.
- Verificación:
- En Azure Portal, navegue hasta Microsoft Defender para la nube > Alertas de seguridad.
- Busque alertas relacionadas con la actividad que simuló (por ejemplo, "Implementación de contenedores privilegiados", "Ejecución de la herramienta de análisis de red").
Consejos de seguridad y mejores prácticas
- Principio de mínimo privilegio: configure sus pods y contenedores con el menor privilegio posible. Evite el uso de contenedores privilegiados y montajes
hostPathsiempre que sea posible. - Escaneo continuo de imágenes: integre la evaluación de la vulnerabilidad de las imágenes en su proceso de CI/CD para escanear imágenes antes de implementarlas en producción.
- Imágenes base segura: utilice imágenes base mínimas de fuentes confiables. Mantenga sus imágenes actualizadas para incluir las últimas correcciones de seguridad.
- Seguridad de Container Registry: proteja su Azure Container Registry (ACR) con autenticación sólida, RBAC y políticas de acceso estrictas.
- Configuración de seguridad de Kubernetes: siga las mejores prácticas de seguridad para Kubernetes, como el uso de políticas de red, estándares de seguridad de pods (o controladores de admisión) y RBAC para controlar el acceso y el comportamiento de los pods.
- Monitoreo y alertas: configure alertas para todas las detecciones de amenazas importantes de Defender for Containers e intégrelas con su SIEM/SOAR (por ejemplo, Microsoft Sentinel) para una respuesta automatizada.
- Revisión periódica de recomendaciones: revise periódicamente y actúe según las recomendaciones de seguridad proporcionadas por Defender for Cloud para mejorar continuamente la postura de seguridad de sus contenedores.
Solución de problemas comunes
- Defender para contenedores no está habilitado:
- Verifique que el plan "Contenedores" esté "Habilitado" en Microsoft Defender para la Nube en el nivel de suscripción.
- Confirme que la suscripción tenga la licencia adecuada (a menudo incluida con Security Center Standard).
- No se detectan vulnerabilidades en las imágenes:
- Verifique que el registro de contenedores esté integrado correctamente con Defender for Containers.
- Asegúrese de que las imágenes se introduzcan en el registro o clúster después de habilitar Defender para contenedores.
- Puede haber un ligero retraso en aparecer los resultados del análisis.
- Alertas Runtiyo no soy generado:
- Asegúrese de que la "Protección en tiempo de ejecución para clústeres de Kubernetes" esté "Habilitada" en la configuración de Defender for Containers.
- Confirme que el agente de Defender for Containers esté implementado y funcionando correctamente en el clúster de AKS. Puede verificar el estado de los pods relacionados con Defender en el espacio de nombres
kube-systemoazure-defender. - Asegúrese de que la actividad que está probando realmente active una regla de detección de Defender for Containers. Algunas actividades pueden considerarse normales según el contexto.
- Falsos positivos (Alertas de actividad legítima):
- Investigue la alerta en el portal de Defender for Cloud para comprender el motivo de la alerta.
- Si se trata de una actividad legítima, puede suprimir la alerta (con precaución) o ajustar la configuración del clúster/aplicación para evitar que la actividad se marque como sospechosa.
- Proporcionar comentarios a Microsoft sobre falsos positivos para ayudar a mejorar la inteligencia sobre amenazas.
Conclusión
Microsoft Defender para contenedores es una herramienta esencial para proteger el ciclo de vida completo de sus cargas de trabajo en contenedores. Al proporcionar evaluación de vulnerabilidad de imágenes, protección en tiempo de ejecución para clústeres de Kubernetes y monitoreo continuo de amenazas, permite a las organizaciones construir y operar entornos de contenedores de forma segura. La implementación efectiva de estas capacidades es fundamental para mitigar los riesgos asociados con la adopción de contenedores, garantizar el cumplimiento y fortalecer su postura general de seguridad. Con esta guía práctica, los profesionales de la seguridad y los administradores de TI estarán bien equipados para configurar, validar y administrar Microsoft Defender para contenedores, protegiendo sus activos en contenedores más valiosos.
Referencias:
[1] Microsoft aprende. ¿Qué es Microsoft Defender para contenedores?. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/defender-for-containers-introduction [2] Microsoft aprende. Arquitectura de seguridad de contenedores - Defender for Cloud. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/defender-for-containers-architecture [3] Microsoft aprende. Asegure sus contenedores de Azure con Defender for Containers. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/tutorial-enable-containers-azure [4] Microsoft aprende. Configurar los componentes de Microsoft Defender para contenedores. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/defender-for-containers-enable [5] Microsoft aprende. Evaluaciones de vulnerabilidad para entornos compatibles. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/agentless-vulnerability-assessment-azure [6] Microsoft aprende. Alertas de seguridad en Microsoft Defender para la Nube. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/alerts-overview [7] Microsoft aprende. Matriz de soporte de contenedores en Defender for Cloud. Disponible en: https://learn.microsoft.com/pt-br/azure/defender-for-cloud/support-matrix-defender-for-containers