Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En esta guía se proporcionan pasos de configuración y otras acciones que le ayudarán a integrar GitHub Advanced Security (GHAS) y Microsoft Defender para la nube con un caso de uso que le ayude a validar la integración de un extremo a otro. Esta integración ayuda a maximizar la seguridad de las aplicaciones nativas de la nube de Microsoft al correlacionar los riesgos y el contexto en tiempo de ejecución con el código originado para una corrección más rápida con tecnología de inteligencia artificial.
Siguiendo esta guía, podrá:
- Configure el repositorio de GitHub para la cobertura de Defender for Cloud.
- Cree un factor de riesgo en tiempo de ejecución.
- Pruebe casos de uso reales en Defender for Cloud.
- Vincule el código a los recursos en tiempo de ejecución.
- Inicie una campaña de seguridad en GitHub. Esta campaña usa el contexto en tiempo de ejecución para priorizar las alertas de seguridad de GHAS.
- Cree incidencias de GitHub desde Defender for Cloud para comenzar el proceso de remediación.
- Cierre el bucle entre los equipos de ingeniería y seguridad.
Prerrequisitos
| Aspecto | Detalles |
|---|---|
| Requisitos del entorno | - Cuenta de GitHub con un conector creado en Defender for Cloud - Licencia de GitHub Advanced Security (GHAS) en repositorios conectados - Plan de Defender Cloud Security Posture Management (DCSPM) habilitado en la suscripción. - Microsoft Security Copilot (opcional para la corrección automatizada con tecnología de IA) |
| Roles y permisos | - Permisos de administrador de seguridad - Administrador de seguridad en la suscripción de Azure (para ver los resultados en Defender for Cloud) - Propietario de la organización de GitHub (para conectar repositorios y configurar campañas de seguridad) |
| Entornos en la nube | - Disponible solo en nubes comerciales (no en Azure Government, Azure operado por 21Vianet u otras nubes soberanas) |
Preparación del entorno
Paso 1: Configuración del repositorio de GitHub y ejecución del flujo de trabajo
Para probar la integración, use sus propios repositorios o un proyecto de espacio aislado example que tenga un repositorio de GitHub de prueba con todo el contenido para crear una imagen de contenedor vulnerable.
Inicie sesión en Azure Portal.
Vaya a Microsoft Defender para la nube>DevOps security.
Escriba el nombre del repositorio de código en la barra de búsqueda (ejemplo: zava-webshop).
Valide que realmente pertenece a la organización que está supervisando (ejemplo: zava-corporation org).
Revise si hay algún resultado para el repositorio.
Asegúrese de que Estado de seguridad avanzado está On, lo que indica que ha habilitado GitHub Advanced Security en el repositorio supervisado: > el repositorio incorporado.
Si no se encuentra el repositorio, consulte la documentación de Microsoft Defender para la nube para la solución de problemas y el proceso de incorporación del conector de GitHub.
Asegúrese de que el examen sin agente esté activado para el conector de GitHub.
Paso 2: Validar que el entorno está listo
La validación confirma que el entorno está configurado correctamente para exponer el código en las recomendaciones en tiempo de ejecución y generar resultados accionables. Durante este paso, Defender comprueba que:
Código completo para la visibilidad en tiempo de ejecución
- Microsoft Defender para la nube supervisa continuamente los repositorios de código fuente para detectar vulnerabilidades de seguridad.
- Los artefactos de compilación, como las imágenes de contenedor, se escanean en registros de contenedores antes de la implementación.
- Las cargas de trabajo en tiempo de ejecución implementadas en clústeres de Kubernetes se supervisan para detectar riesgos de seguridad.
- Defender for Cloud correlaciona y realiza un seguimiento de cada artefacto desde el código, a través de la compilación y la implementación, al tiempo de ejecución y de vuelta.
Nota:
Después de aplicar los pasos anteriores, pueden pasar hasta 24 horas para ver los siguientes resultados.
Pruebe que el examen sin agente de GitHub recoge el repositorio.
Vaya a Microsoft Defender para la nube>Cloud Security Explorer y realice la consulta. Las consultas de validación comprueban si Defender pueden identificar artefactos generados por las canalizaciones y las cargas de trabajo. Si las consultas devuelven resultados, indica que el examen y la correlación funcionan según lo previsto.
Nota:
Si no se devuelve ningún resultado, puede indicar que aún no se generan artefactos, el escaneo no está configurado o faltan permisos. Consulte Roles y permisos de usuario para obtener más información.
Valide que Defender for Cloud (en Azure Container Registry) examine la imagen de contenedor y la use para crear un contenedor.
En tu consulta, añade las condiciones para tu implementación específica.
Compruebe que el contenedor se está ejecutando y que Defender for Cloud ha examinado el clúster de AKS.
Compruebe que los factores de riesgo están configurados correctamente en el lado de Defender for Cloud. Busque el nombre del contenedor en la página de inventario de Defender for Cloud y debería verlo marcado como crítico.
Nota:
Este paso solo es necesario si los factores de riesgo aún no están configurados en el entorno. Si ya usa factores de riesgo, puede comprobar su configuración en Configuración > Importancia del recurso.
La validación correcta garantiza que los pasos posteriores, como recomendaciones, campañas y GitHub generación de problemas, generen resultados significativos.
Nota:
Después de clasificar su recurso como crítico, Defender para la Nube puede tardar hasta 12 horas en enviar los datos a GitHub. Más información.
Paso 3: Crear una campaña de GitHub
Para crear una campaña de escaneo, debe trabajar en el nivel de organización de GitHub. Esta experiencia no está disponible en el nivel de repositorio individual.
En GitHub, diríjase a la organización de GitHub que usó para las pruebas de instalación.
SeleccioneSeguridad>Campañas>Crear campaña>desde filtros de análisis de código.
Esta campaña ayuda a priorizar los hallazgos de GHAS que pertenecen al código que realmente se implementa y ejecuta.
Seleccione los filtros de riesgos de tiempo de ejecución para la campaña.
Seleccione Guardar>Publicar como campaña. Escriba la información necesaria y, a continuación, publique la campaña.
Paso 4: Movilización de recomendaciones
Utilice la funcionalidad de recomendaciones de contenedores VA desde el código al tiempo de ejecución y la correlación de las CVE identificadas con las alertas de seguridad de Dependabot para comprender el estado de los problemas de seguridad. Después, puede asignar la recomendación para la resolución al equipo de ingeniería pertinente en función del mapeo de código a tiempo de ejecución.
En el portal de Defender for Cloud, vaya a la pestaña Recomendaciones .
Busque el nombre del contenedor que creó a partir del repositorio de código.
Abra una de las recomendaciones de actualización de software ; el nombre de la recomendación comienza con Update
Seleccione la pestaña CVE asociadas Las alertas de seguridad aparecen como parte del flujo de evaluación de recomendaciones. Estas alertas proporcionan indicaciones sobre los hallazgos de seguridad avanzada de GitHub que ya son conocidos por el equipo de ingeniería. Tenga en cuenta que algunos identificadores CVE tienen un enlace Ver en GitHub en la columna de Alertas relacionadas de GitHub.
Seleccione el vínculo para abrir la alerta de seguridad de GHAS pertinente. (Para ver el contenido de la alerta GHAS en GitHub, debe tener permisos de acceso al repositorio de GitHub correspondiente. Si no tiene permisos de acceso, siempre puede copiar el vínculo para su uso posterior o ponerse en contacto con el administrador de GitHub).
Si hay una ampliación de alertas, hay una alerta de Dependabot correspondiente que ya es conocida por el equipo de ingeniería. Si el estado es Activo, nadie lo ha corregido aún y el problema debe priorizarse para una corrección.
Si no se encuentra ningún enriquecimiento, esto indica un riesgo en tiempo de ejecución desconocido para la ingeniería que debe priorizarse para una corrección.
¿Cuál es el siguiente paso? ¿Cómo sabría quién es el equipo adecuado para la solución? ¿Cómo sabría qué contexto podría ayudar a la ingeniería con la solución?
Creación de un problema de GitHub
Para cerrar el bucle entre los equipos de seguridad e ingeniería, puede crear un problema de GitHub que dé prioridad a los problemas de seguridad en los que el equipo de ingeniería debe centrarse. Esta priorización puede incluir el paso de hallazgos que GHAS no ha recogido, pero que Defender for Cloud detecta para identificadores CVE que no forman parte de las dependencias directas. Estos hallazgos pueden incluir vulnerabilidades en la imagen base, el sistema operativo o el software como NGINX.
El problema de GitHub se genera automáticamente en el repositorio de código de origen, con todos los identificadores CVE encontrados en el ámbito de la recomendación, incluidos otros contextos relacionados con el SDLC del contenedor y el tiempo de ejecución, que pueden ayudar a facilitar la corrección y las pruebas.
Desde la vista de recomendación, puede generar explícitamente un problema de GitHub para realizar un seguimiento del trabajo de corrección.
Vaya a la pestaña Información de corrección y vea el diagrama de código a tiempo de ejecución. El diagrama asigna el contenedor en ejecución a la imagen de contenedor en el repositorio de código y al repositorio de código de origen en GitHub.
En la pestaña Información de Remediación, revise el cuadro Tiempo de ejecución afectado.
Validate si ya existe un problema de GitHub. Si ya existe un problema de GitHub, se muestra un icono de GitHub en el cuadro. Mantenga el puntero sobre el icono para ver los detalles del problema.
Si no existe ningún problema y tiene los permisos necesarios, puede generar un nuevo problema de GitHub. Seleccione Realizar acción.
Seleccione la opción Generar issue de GitHub en el menú emergente.
Si el problema se creó correctamente, verá una notificación emergente con un vínculo al problema. El problema se crea en el repositorio de código de origen.
Nota:
Si la opción de generar un problema Generate GitHub no está disponible, es posible que falten los permisos necesarios en GitHub o en el repositorio. Póngase en contacto con el administrador de GitHub o del repositorio para solicitar acceso.
Realizar correcciones de agencia
En el lado de GitHub, si tiene una licencia de GitHub Copilot, puede resolver el problema con la ayuda del agente de codificación de GitHub:
- Asigne un agente de codificación de GitHub al problema.
- Revise la corrección generada.
- Si la corrección parece razonable, aplíquela.
- Observe que Defender for Cloud actualiza el estado del problema a Cerrado.
Contenido relacionado
- ¿Qué es la integración de GitHub Advanced Security con Microsoft Defender para la nube?
- Información general sobre la seguridad de DevOps para de Microsoft Defender for Cloud
- Inicio rápido: Conexión del entorno de GitHub a Microsoft Defender para la nube
- Configuración del examen de código sin agente (versión preliminar)