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 este artículo se enumeran las recomendaciones que puede ver en Microsoft Defender para la nube si conecta un entorno de Azure DevOps, GitHub o GitLab mediante la página Configuración del entorno.
Las recomendaciones que aparecen en el entorno se basan en los recursos que está protegiendo y en la configuración personalizada. Puede ver las recomendaciones en el portal que se aplican a los recursos.
Para obtener información sobre las acciones que puede realizar en respuesta a estas recomendaciones, consulte Corrección de recomendaciones en Defender for Cloud.
Obtenga más información sobre las ventajas y características de seguridad de DevOps .
Las recomendaciones de DevOps no afectan a la puntuación segura. Para decidir qué recomendaciones resolver primero, examine la gravedad de cada recomendación y su posible impacto en la puntuación segura.
recomendaciones de Azure DevOps
Azure DevOps repositorios deben tener habilitado GitHub Advanced Security para Azure DevOps (GHAzDO)
Descripción: la seguridad de DevOps en Defender for Cloud usa una consola central para capacitar a los equipos de seguridad con la capacidad de proteger las aplicaciones y los recursos del código a la nube en Azure DevOps. Con la habilitación de GitHub Advanced Security para repositorios de Azure DevOps (GHAzDO), incluida GitHub Advanced Security para Azure DevOps, obtendrá conclusiones sobre secretos, dependencias y vulnerabilidades de código en los repositorios de Azure DevOps que se muestran en Microsoft Defender para la nube.
Gravedad: Alta
Azure DevOps repositorios deben tener resueltos los resultados del examen de secretos.
Descripción: se encontraron secretos en repositorios de código. Corrija inmediatamente para evitar una infracción de seguridad. Los secretos encontrados en los repositorios pueden filtrarse o ser detectados por adversarios, lo que conduce a un riesgo de una aplicación o servicio. La herramienta de examen de credenciales de DevOps Seguridad de Microsoft solo examina las compilaciones en las que está configurado para ejecutarse. Por tanto, es posible que los resultados no reflejen el estado completo de los secretos en los repositorios.
Gravedad: Alta
Azure DevOps repositorios deben tener resueltos los resultados del examen de código
Descripción: se encontraron vulnerabilidades en repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades.
Gravedad: Media
Azure DevOps repositorios deben tener resueltos los resultados del examen de vulnerabilidades de dependencia
Descripción: vulnerabilidades de dependencia encontradas en repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades.
Gravedad: Media
Los repositorios de Azure DevOps deben tener resueltos los hallazgos del análisis de infraestructura como código
Descripción: problemas de infraestructura como configuración de seguridad de código encontrados en repositorios. Los problemas se detectaron en los archivos de plantilla. Para mejorar la posición de seguridad de los recursos en la nube relacionados, se recomienda encarecidamente corregir estos problemas.
Gravedad: Media
Azure DevOps canalizaciones no deben tener secretos disponibles para las compilaciones de bifurcaciones
Descripción: en repositorios públicos, es posible que los usuarios de fuera de la organización creen bifurcaciones y ejecuten compilaciones en el repositorio bifurcada. En tal caso, si esta configuración está habilitada, los externos pueden obtener acceso a los secretos de canalización de compilación destinados a ser internos.
Gravedad: Alta
Azure DevOps conexiones de servicio no deben conceder acceso a todas las canalizaciones
Descripción: las conexiones de servicio se usan para crear conexiones de Azure Pipelines a servicios externos y remotos para ejecutar tareas en un trabajo. Los permisos de canalización controlan qué canalizaciones están autorizadas para usar la conexión de servicio. Para admitir la seguridad de las operaciones de canalización, no se debe conceder acceso a las conexiones de servicio a todas las canalizaciones de YAML. Esto ayuda a mantener el principio de privilegios mínimos porque un atacante puede usar una vulnerabilidad en los componentes usados por una canalización para atacar otras canalizaciones con acceso a recursos críticos.
Gravedad: Alta
Azure DevOps archivos seguros no deben conceder acceso a todas las canalizaciones
Descripción: los archivos seguros proporcionan a los desarrolladores una manera de almacenar archivos que se pueden compartir entre canalizaciones. Estos archivos se suelen usar para almacenar secretos como certificados de firma y claves SSH. Si se concede acceso a un archivo seguro a todas las canalizaciones de YAML, un usuario no autorizado puede robar información de los archivos seguros mediante la creación de una canalización YAML y el acceso al archivo seguro.
Gravedad: Alta
Azure DevOps grupos de variables con variables secretas no deben conceder acceso a todas las canalizaciones
Descripción: los grupos de variables almacenan valores y secretos que es posible que desee pasar a una canalización de YAML o que estén disponibles en varias canalizaciones. Puede compartir y usar grupos de variables en varias canalizaciones en el mismo proyecto. Si un grupo de variables que contiene secretos está marcado como accesible para todas las canalizaciones de YAML, un atacante puede aprovechar los recursos que implican las variables secretas mediante la creación de una nueva canalización.
Gravedad: Alta
Azure DevOps conexiones de servicio de Azure clásicas no deben usarse para acceder a una suscripción
Descripción: use el tipo Azure Resource Manager (ARM) de conexiones de servicio en lugar de Azure conexiones de servicio clásicas para conectarse a Azure suscripciones. El modelo de ARM ofrece varias mejoras de seguridad, como un control de acceso más sólido, una auditoría mejorada, la implementación o gobernanza basada en ARM, el acceso a identidades administradas y el almacén de claves para secretos, la autenticación basada en permisos de Entra y la compatibilidad con etiquetas y grupos de recursos para una administración simplificada.
Gravedad: Media
(Versión preliminar) Azure DevOps repositorios deben tener resueltos los resultados de pruebas de seguridad de api
Descripción: vulnerabilidades de seguridad de API encontradas en repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades.
Gravedad: Media
(Versión preliminar) Azure DevOps repositorios deben requerir la aprobación mínima de dos revisores para las inserciones de código.
Descripción: para evitar que los cambios malintencionados o no deseados se confirmen directamente, es importante implementar directivas de protección para la rama predeterminada en Azure DevOps repositorios. Se recomienda requerir al menos dos revisores de código para aprobar las solicitudes de incorporación de cambios antes de combinar el código con la rama predeterminada. Al requerir la aprobación de un número mínimo de dos revisores, puede reducir el riesgo de modificaciones no autorizadas, lo que podría provocar inestabilidad del sistema o vulnerabilidades de seguridad.
Esta recomendación se proporciona en Defender for Cloud posición de seguridad fundamental, si ha conectado Azure DevOps a Defender for Cloud.
Gravedad: Alta
(Versión preliminar) Azure DevOps repositorios no deben permitir que los solicitantes aprueben sus propias solicitudes de incorporación de cambios
Descripción: para evitar que los cambios malintencionados o no deseados se confirmen directamente, es importante implementar directivas de protección para la rama predeterminada en Azure DevOps repositorios. Se recomienda prohibir que los creadores de solicitudes de incorporación de cambios aprueben sus propios envíos para asegurarse de que cada cambio se somete a una revisión objetiva por parte de alguien que no sea el autor. Al hacerlo, puede reducir el riesgo de modificaciones no autorizadas, lo que podría provocar inestabilidad del sistema o vulnerabilidades de seguridad.
Esta recomendación se proporciona en Defender for Cloud posición de seguridad fundamental, si ha conectado Azure DevOps a Defender for Cloud.
Gravedad: Alta
(Versión preliminar) Azure DevOps proyectos deben tener deshabilitado la creación de canalizaciones clásicas
Descripción: al deshabilitar la creación de canalizaciones de compilación y versión clásicas, se evita un problema de seguridad que se deriva de YAML y canalizaciones clásicas que comparten los mismos recursos, por ejemplo, las mismas conexiones de servicio. Los posibles atacantes pueden aprovechar las canalizaciones clásicas para crear procesos que evadan los mecanismos de defensa típicos configurados en torno a las canalizaciones DE YAML modernas.
Gravedad: Alta
recomendaciones de GitHub
GitHub organizaciones no deben hacer que los secretos de acción sean accesibles para todos los repositorios
Descripción: para los secretos usados en GitHub flujos de trabajo de acción que se almacenan en el nivel de organización de GitHub, puede usar directivas de acceso para controlar qué repositorios pueden usar secretos de la organización. Los secretos de nivel de organización permiten compartir secretos entre varios repositorios. Esto reduce la necesidad de crear secretos duplicados. Sin embargo, una vez que se hace accesible un secreto a un repositorio, cualquier persona con acceso de escritura en el repositorio puede acceder al secreto desde cualquier rama de un flujo de trabajo. Para reducir la superficie expuesta a ataques, asegúrese de que solo se puede acceder al secreto desde repositorios seleccionados.
Esta recomendación se proporciona en Defender for Cloud posición de seguridad fundamental, si ha conectado Azure DevOps a Defender for Cloud.
Gravedad: Alta
GitHub repositorios deben tener habilitado el examen de secretos
Description: GitHub examina repositorios para tipos conocidos de secretos, para evitar el uso fraudulento de secretos que se han confirmado accidentalmente en repositorios. El análisis de secretos examinará todo el historial de Git en todas las ramas presentes en el repositorio de GitHub para ver los secretos. Algunos ejemplos de secretos son tokens y claves privadas que un proveedor de servicios puede emitir para la autenticación. Si se registra un secreto en un repositorio, cualquiera que tenga acceso de lectura al repositorio puede usar el secreto para acceder al servicio externo con esos privilegios. Los secretos deben almacenarse en una ubicación dedicada y segura fuera del repositorio del proyecto.
Gravedad: Alta
GitHub repositorios deben tener habilitado el examen de código
Description: GitHub usa el análisis de código para analizar código con el fin de buscar vulnerabilidades de seguridad y errores en el código. El escaneo de código puede usarse para encontrar, clasificar y priorizar las correcciones de los problemas existentes en su código. El análisis del código también puede evitar que los desarrolladores generen nuevos problemas. Los escaneos se pueden programar para días y horas específicas, o los escaneos se pueden activar cuando se produce un evento específico en el repositorio, como un push. Si el examen de código encuentra una posible vulnerabilidad o error en el código, GitHub muestra una alerta en el repositorio. Una vulnerabilidad es un problema en el código de un proyecto que se puede aprovechar para dañar la confidencialidad, la integridad o la disponibilidad del proyecto.
Gravedad: Media
GitHub repositorios deben tener habilitado el examen de Dependabot
Description: GitHub envía alertas de Dependabot cuando detecta vulnerabilidades en dependencias de código que afectan a los repositorios. Una vulnerabilidad es un problema en el código de un proyecto que se puede aprovechar para dañar la confidencialidad, la integridad o la disponibilidad del proyecto o de otros proyectos que usan su código. Las vulnerabilidades varían en tipo, severidad y método de ataque. Cuando el código depende de un paquete que tiene una vulnerabilidad de seguridad, esta dependencia puede causar una serie de problemas.
Gravedad: Media
GitHub repositorios deben tener resueltos los resultados del examen de secretos.
Descripción: secretos encontrados en repositorios de código. Esto debe corregirse inmediatamente para evitar una infracción de seguridad. Los secretos encontrados en los repositorios se pueden filtrar o detectar por adversarios, lo que conduce a un riesgo de una aplicación o servicio.
Gravedad: Alta
GitHub repositorios deben tener resueltos los resultados del examen de código
Descripción: vulnerabilidades encontradas en repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades.
Gravedad: Media
GitHub repositorios deben tener resueltos los resultados del examen de vulnerabilidades de dependencia
Descripción: GitHub repositorios deben tener resueltos los resultados del examen de vulnerabilidades de dependencia.
Gravedad: Media
GitHub repositorios deben tener infraestructura como resultados de análisis de código resueltos
Descripción: se encontraron problemas de infraestructura como configuración de seguridad de código en repositorios. Los problemas se detectaron en los archivos de plantilla. Para mejorar la posición de seguridad de los recursos en la nube relacionados, se recomienda encarecidamente corregir estos problemas.
Gravedad: Media
GitHub repositorios deben tener directivas de protección para la rama predeterminada habilitada
Descripción: la rama predeterminada del repositorio debe protegerse mediante directivas de protección de ramas para evitar que los cambios no deseados o malintencionados se confirmen directamente en el repositorio.
Gravedad: Alta
GitHub repositorios deben tener inserciones forzadas en la rama predeterminada deshabilitada
Descripción: dado que la rama predeterminada se usa normalmente para la implementación y otras actividades con privilegios, los cambios en ella deben abordarse con precaución. La habilitación de inserciones forzadas puede introducir cambios no deseados o malintencionados en la rama predeterminada.
Gravedad: Media
GitHub las organizaciones deben tener habilitada la protección de inserción de análisis de secretos
Descripción: La protección de inserción bloqueará las confirmaciones que contienen secretos, lo que impide la exposición accidental de secretos. Para evitar el riesgo de exposición de credenciales, la protección de inserción se debe habilitar automáticamente para cada repositorio habilitado para el examen de secretos.
Gravedad: Alta
GitHub repositorios no deben usar ejecutores autohospedados
Descripción: Self-Hosted ejecutores en GitHub faltan garantías de funcionamiento en máquinas virtuales limpias efímeras y pueden verse comprometidas de forma persistente por código que no es de confianza en un flujo de trabajo. Por lo tanto, los ejecutores de Self-Hosted no deben usarse para flujos de trabajo de acción.
Gravedad: Alta
GitHub las organizaciones deben tener permisos de flujo de trabajo de acciones establecidos en solo lectura
Descripción: de forma predeterminada, se deben conceder permisos de solo lectura a los flujos de trabajo de acción para evitar que los usuarios malintencionados aprovechen los flujos de trabajo con permisos excesivos para acceder a los recursos y manipularlos.
Gravedad: Alta
GitHub las organizaciones deben tener más de una persona con permisos de administrador
Descripción: tener al menos dos administradores reduce el riesgo de perder el acceso de administrador. Esto es útil en el caso de escenarios de cuentas de emergencia.
Gravedad: Alta
GitHub las organizaciones deben tener permisos base establecidos en ningún permiso ni leer
Descripción: los permisos base deben establecerse en ninguno o leerse para que una organización siga el principio de privilegios mínimos y evite el acceso innecesario.
Gravedad: Alta
(Versión preliminar) GitHub repositorios deben tener resueltos los resultados de las pruebas de seguridad de api
Descripción: se encontraron vulnerabilidades de seguridad de API en repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades.
Gravedad: Media
(Versión preliminar) GitHub organizaciones no deben hacer que los secretos de acción sean accesibles para todos los repositorios
Descripción: para los secretos usados en GitHub flujos de trabajo de acción que se almacenan en el nivel de organización de GitHub, puede usar directivas de acceso para controlar qué repositorios pueden usar secretos de organización. Los secretos de nivel de organización permiten compartir secretos entre varios repositorios, lo que reduce la necesidad de crear secretos duplicados. Sin embargo, cuando se hace accesible un secreto a un repositorio, cualquier persona con acceso de escritura en el repositorio puede acceder al secreto desde cualquier rama de un flujo de trabajo. Para reducir la superficie expuesta a ataques, asegúrese de que solo se puede acceder al secreto desde repositorios seleccionados.
Gravedad: Alta
(Versión preliminar) GitHub las organizaciones deben bloquear Sugerencias de Copilot que coincidan con el código público
Descripción: habilitar el filtro de GitHub Copilot para bloquear las sugerencias de código que coinciden con el código público en GitHub mejora la seguridad y el cumplimiento legal. Evita la incorporación involuntaria del código público o de código abierto, lo que reduce el riesgo de problemas legales y garantiza el cumplimiento de los términos de licencia. Además, ayuda a evitar la introducción de posibles vulnerabilidades del código público en los proyectos de la organización, manteniendo así una mayor calidad y seguridad del código. Cuando el filtro está habilitado, GitHub Copilot comprueba las sugerencias de código con su código circundante de unos 150 caracteres en el código público en GitHub. Si hay una coincidencia o una coincidencia cercana, no se mostrará la sugerencia.
Gravedad: Alta
(Versión preliminar) GitHub las organizaciones deben aplicar la autenticación multifactor para colaboradores externos
Descripción: aplicar la autenticación multifactor para colaboradores externos en una organización de GitHub es una medida de seguridad que requiere que los colaboradores usen una forma adicional de identificación además de su contraseña para acceder a los repositorios y recursos de la organización. Esto mejora la seguridad al proteger contra el acceso no autorizado, incluso si una contraseña está en peligro y ayuda a garantizar el cumplimiento de los estándares del sector. Implica informar a los colaboradores sobre el requisito y proporcionar soporte para la transición, lo que en última instancia reduce el riesgo de infracciones de datos.
Gravedad: Alta
(Versión preliminar) GitHub repositorios deben requerir la aprobación mínima de dos revisores para las inserciones de código.
Descripción: para evitar que los cambios malintencionados o no deseados se confirmen directamente, es importante implementar directivas de protección para la rama predeterminada en GitHub repositorios. Se recomienda requerir al menos dos revisores de código para aprobar las solicitudes de incorporación de cambios antes de combinar el código con la rama predeterminada. Al requerir la aprobación de un número mínimo de dos revisores, puede reducir el riesgo de modificaciones no autorizadas, lo que podría provocar inestabilidad del sistema o vulnerabilidades de seguridad.
Gravedad: Alta
Recomendaciones de GitLab
Los proyectos de GitLab deben tener resueltos los resultados del examen de secretos
Descripción: se encontraron secretos en repositorios de código. Esto debe corregirse inmediatamente para evitar una infracción de seguridad. Los secretos encontrados en los repositorios se pueden filtrar o detectar por adversarios, lo que conduce a un riesgo de una aplicación o servicio.
Gravedad: Alta
Los proyectos de GitLab deben tener resueltos los resultados del examen de código
Descripción: se encontraron vulnerabilidades en repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades.
Gravedad: Media
Los proyectos de GitLab deben tener resueltos los resultados del examen de vulnerabilidades de dependencia
Descripción: GitHub repositorios deben tener resueltos los resultados del examen de vulnerabilidades de dependencia.
Gravedad: Media
Los proyectos de GitLab deben tener una infraestructura a medida que se resuelvan los resultados del examen de código
Descripción: se encontraron problemas de infraestructura como configuración de seguridad de código en repositorios. Los problemas mostrados se detectaron en los archivos de plantilla. Para mejorar la posición de seguridad de los recursos en la nube relacionados, se recomienda encarecidamente corregir estos problemas.
Gravedad: Media
Recomendaciones de seguridad de DevOps en desuso
Los repositorios de código deben tener resueltos los resultados del examen de código
Descripción: la seguridad de DevOps en Defender for Cloud ha encontrado vulnerabilidades en los repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades. (Ninguna directiva relacionada)
Gravedad: Media
Los repositorios de código deben tener los resultados del examen de secretos resueltos
Descripción: la seguridad de DevOps en Defender for Cloud ha encontrado un secreto en los repositorios de código. Esto debe corregirse inmediatamente para evitar una infracción de seguridad. Los secretos encontrados en los repositorios se pueden filtrar o detectar por adversarios, lo que conduce a un riesgo de una aplicación o servicio. Para Azure DevOps, la herramienta Seguridad de Microsoft DevOps CredScan solo examina las compilaciones en las que se ha configurado para ejecutarse. Por tanto, es posible que los resultados no reflejen el estado completo de los secretos en los repositorios. (Ninguna directiva relacionada)
Gravedad: Alta
Los resultados de los exámenes de Dependabot de los repositorios de código deben estar resueltos
Descripción: la seguridad de DevOps en Defender for Cloud ha encontrado vulnerabilidades en los repositorios de código. Para mejorar la posición de seguridad de los repositorios, se recomienda encarecidamente corregir estas vulnerabilidades. (Ninguna directiva relacionada)
Gravedad: Media
Los resultados de los exámenes de infraestructura como código de los repositorios de código deben estar resueltos
Descripción: la seguridad de DevOps en Defender for Cloud ha encontrado problemas de configuración de seguridad de código en repositorios. Los problemas mostrados se detectaron en los archivos de plantilla. Para mejorar la posición de seguridad de los recursos en la nube relacionados, se recomienda encarecidamente corregir estos problemas. (Ninguna directiva relacionada)
Gravedad: Media
GitHub repositorios deben tener habilitado el examen de código
Description: GitHub usa el análisis de código para analizar código con el fin de buscar vulnerabilidades de seguridad y errores en el código. El escaneo de código puede usarse para encontrar, clasificar y priorizar las correcciones de los problemas existentes en su código. El análisis del código también puede evitar que los desarrolladores generen nuevos problemas. Los escaneos se pueden programar para días y horas específicas, o los escaneos se pueden activar cuando se produce un evento específico en el repositorio, como un push. Si el examen de código encuentra una posible vulnerabilidad o error en el código, GitHub muestra una alerta en el repositorio. Una vulnerabilidad es un problema en el código de un proyecto que se puede aprovechar para dañar la confidencialidad, la integridad o la disponibilidad del proyecto. (Ninguna directiva relacionada)
Gravedad: Media
GitHub repositorios deben tener habilitado el examen de secretos
Description: GitHub examina repositorios para tipos conocidos de secretos, para evitar el uso fraudulento de secretos que se han confirmado accidentalmente en repositorios. El análisis de secretos examinará todo el historial de Git en todas las ramas presentes en el repositorio de GitHub para ver los secretos. Algunos ejemplos de secretos son tokens y claves privadas que un proveedor de servicios puede emitir para la autenticación. Si se registra un secreto en un repositorio, cualquiera que tenga acceso de lectura al repositorio puede usar el secreto para acceder al servicio externo con esos privilegios. Los secretos deben almacenarse en una ubicación dedicada y segura fuera del repositorio del proyecto. (Ninguna directiva relacionada)
Gravedad: Alta
GitHub repositorios deben tener habilitado el examen de Dependabot
Description: GitHub envía alertas de Dependabot cuando detecta vulnerabilidades en dependencias de código que afectan a los repositorios. Una vulnerabilidad es un problema en el código de un proyecto que se puede aprovechar para dañar la confidencialidad, la integridad o la disponibilidad del proyecto o de otros proyectos que usan su código. Las vulnerabilidades varían en tipo, severidad y método de ataque. Cuando el código depende de un paquete que tiene una vulnerabilidad de seguridad, esta dependencia puede causar una serie de problemas. (Ninguna directiva relacionada)
Gravedad: Media