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.
Microsoft Security DevOps es una aplicación de línea de comandos que integra el análisis estático en el ciclo de vida de desarrollo. Instala, configura y ejecuta los analizadores de cumplimiento, seguridad y SDL más recientes mediante configuraciones portátiles para garantizar una ejecución coherente y determinista entre entornos.
Microsoft Security DevOps usa las siguientes herramientas de código abierto:
| Nombre | Language | Licencia |
|---|---|---|
| AntiMalware | Protección contra malware en Windows desde Microsoft Defender para punto de conexión. Busca malware y interrumpe la compilación si se detecta contenido malintencionado. Se ejecuta de forma predeterminada en el agente más reciente de Windows. | No de código abierto |
| Bandit | Pitón | Licencia de Apache 2.0 |
| BinSkim | Destinos binarios: Windows, ELF | Licencia de MIT |
| Checkov | Terraform, plan de Terraform, CloudFormation, AWS SAM, Kubernetes, gráficos de Helm, Kustomize, Dockerfile, Sin servidor, Bicep, OpenAPI, ARM | Licencia de Apache 2.0 |
| ESLint | JavaScript | Licencia de MIT |
| IaCFileScanner | Herramienta de mapeo de plantillas para Terraform, CloudFormation, ARM templates y Bicep | No de código abierto |
| Analizador de plantillas | Plantillas de ARM, Bicep | Licencia de MIT |
| Terrascan | Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation | Licencia de Apache 2.0 |
| Trivy | Imágenes de contenedores, infraestructura como código (IaC) | Licencia de Apache 2.0 |
Nota:
A partir del 20 de septiembre de 2023, la herramienta de análisis de secretos (CredScan) dentro de la extensión DevOps de Seguridad de Microsoft (MSDO) para Azure DevOps ha quedado en desuso. El examen de secretos de MSDO se reemplaza por GitHub Advanced Security para Azure DevOps.
Prerrequisitos
- Necesita privilegios de administrador de colecciones de proyectos en la organización de Azure DevOps para instalar la extensión. Si no tiene acceso, solicítelo a su administrador de Azure DevOps durante la instalación.
Configura la extensión Microsoft Security DevOps de Azure DevOps
Inicie sesión en Azure DevOps.
Vaya a Shopping Bag>Manage extensions (Administrar extensiones).
Seleccione Compartido.
Nota:
Si ya ha instalado la extensión DevOps de Microsoft Security, aparece en la pestaña Instalado.
Seleccione Microsoft Security DevOps.
Seleccione Instalar.
Seleccione la organización adecuada en el menú desplegable.
Seleccione Instalar.
Seleccione Continuar con la organización.
Configuración de canalizaciones mediante YAML
Inicie sesión en Azure DevOps.
Seleccione su proyecto.
Vaya a Canalizaciones>Nueva canalización.
Seleccione Git de Azure Repos.
Seleccione el repositorio correspondiente.
Seleccione Canalización de inicio.
Pegue el siguiente CÓDIGO YAML en la canalización:
# Starter pipeline # Start with a minimal pipeline that you can customize to build and deploy your code. # Add steps that build, run tests, deploy, and more: # https://aka.ms/yaml trigger: none pool: # ubuntu-latest also supported. vmImage: 'windows-latest' steps: - task: MicrosoftSecurityDevOps@1 displayName: 'Microsoft Security DevOps' # inputs: # config: string. Optional. A file path to an MSDO configuration file ('*.gdnconfig'). Vist the MSDO GitHub wiki linked below for additional configuration instructions # policy: 'azuredevops' | 'microsoft' | 'none'. Optional. The name of a well-known Microsoft policy to determine the tools/checks to run. If no configuration file or list of tools is provided, the policy may instruct MSDO which tools to run. Default: azuredevops. # categories: string. Optional. A comma-separated list of analyzer categories to run. Values: 'code', 'artifacts', 'IaC', 'containers'. Example: 'IaC, containers'. Defaults to all. # languages: string. Optional. A comma-separated list of languages to analyze. Example: 'javascript,typescript'. Defaults to all. # tools: string. Optional. A comma-separated list of analyzer tools to run. Values: 'bandit', 'binskim', 'checkov', 'eslint', 'templateanalyzer', 'terrascan', 'trivy'. Example 'templateanalyzer, trivy' # break: boolean. Optional. If true, will fail this build step if any high severity level results are found. Default: false. # publish: boolean. Optional. If true, will publish the output SARIF results file to the chosen pipeline artifact. Default: true. # artifactName: string. Optional. The name of the pipeline artifact to publish the SARIF result file to. Default: CodeAnalysisLogs*.Nota:
El artifactName "CodeAnalysisLogs" es necesario para la integración con Defender for Cloud. Para obtener más opciones de configuración de herramientas y variables de entorno, consulte la wiki de Microsoft Security DevOps.
Seleccione Guardar y ejecutar para confirmar y ejecutar la canalización.
Nota:
Instale la extensión SARIF SAST Scans Tab para mostrar automáticamente los resultados del análisis de SARIF en la pestaña Exámenes del flujo de trabajo.
Carga de hallazgos de herramientas de seguridad de terceros en Defender for Cloud
Defender for Cloud puede ingerir resultados de SARIF de otras herramientas de seguridad para la visibilidad de código a nube. Para cargar estos resultados, asegúrese de que los repositorios de Azure DevOps estén integrados a Defender for Cloud. Después de la incorporación, Defender for Cloud monitoriza de manera continua el artefacto CodeAnalysisLogs en busca de resultados SARIF.
Use la tarea PublishBuildArtifacts@1 para publicar archivos SARIF en el artefacto CodeAnalysisLogs. Por ejemplo:
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: 'results.sarif'
ArtifactName: 'CodeAnalysisLogs'
Defender for Cloud muestra estos resultados en la evaluación los repositorios de Azure DevOps deberían tener resueltos los hallazgos del análisis de código para el repositorio afectado.