Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Microsoft Security DevOps ist eine Befehlszeilenanwendung, die statische Analysen in Ihren Entwicklungslebenszyklus integriert. Es installiert, konfiguriert und führt die neuesten SDL-, Sicherheits- und Complianceanalysatoren mithilfe tragbarer Konfigurationen aus, um eine konsistente, deterministische Ausführung in allen Umgebungen sicherzustellen.
Microsoft Security DevOps verwendet die folgenden Open Source-Tools:
| Name | Language | Lizenz |
|---|---|---|
| Antischadsoftware | Schutz vor Schadsoftware in Windows von Microsoft Defender für Endpunkte. Sucht nach Schadsoftware und bricht den Build auf, wenn schädliche Inhalte erkannt werden. Wird standardmäßig auf dem neuesten Windows-Agent ausgeführt. | Nicht Open Source |
| Bandit | Python | Apache-Lizenz 2.0 |
| BinSkim | Binäre Ziele: Windows, ELF | MIT-Lizenz |
| Checkov | Terraform, Terraform-Plan, CloudFormation, AWS SAM, Kubernetes, Helm-Diagramme, Kustomize, Dockerfile, Serverless, Bicep, OpenAPI, ARM | Apache-Lizenz 2.0 |
| ESLint | JavaScript | MIT-Lizenz |
| IaCFileScanner | Vorlagenzuordnungstool für Terraform, CloudFormation, ARM-Vorlagen und Bicep | Nicht Open Source |
| Vorlagenanalyse | ARM-Vorlagen, Bicep | MIT-Lizenz |
| Terrascan | Terraform (HCL2), Kubernetes (JSON/YAML), Helm v3, Kustomize, Dockerfiles, CloudFormation | Apache-Lizenz 2.0 |
| Trivy | Containerimages, Infrastructure-as-Code (IaC) | Apache-Lizenz 2.0 |
Hinweis
Ab dem 20. September 2023 wird das Tool Geheimnisüberprüfung (CredScan) innerhalb der Microsoft Security DevOps (MSDO)-Erweiterung für Azure DevOps veraltet sein. MSDO Secrets Scanning wird durch GitHub Advanced Security für Azure DevOps ersetzt.
Voraussetzungen
- Sie benötigen Project Collection Administrator-Berechtigungen in Ihrer Azure DevOps-Organisation, um die Erweiterung zu installieren. Wenn Sie keinen Zugriff haben, fordern Sie ihn während der Installation von Ihrem Azure DevOps-Administrator an.
Konfigurieren der Azure DevOps-Erweiterung von Microsoft Security DevOps
Melden Sie sich bei Azure DevOps an.
Wechseln Sie zu Shopping Bag>Manage Extensions.
Wählen Sie "Freigegeben" aus.
Hinweis
Wenn Sie die Microsoft Security DevOps-Erweiterung bereits installiert haben, wird sie auf der Registerkarte "Installiert" aufgeführt.
Wählen Sie Microsoft Security DevOps aus.
Wählen Sie Installieren aus.
Wählen Sie im Dropdownmenü die entsprechende Organisation aus.
Wählen Sie Installieren aus.
Wählen Sie "Weiter zur Organisation" aus.
Konfigurieren von Pipelines mithilfe von YAML
Melden Sie sich bei Azure DevOps an.
Wählen Sie Ihr Projekt aus.
Wechseln Sie zu Pipelines>Neue Pipeline.
Wählen Sie Azure Repos Git aus.
Wählen Sie das relevante Repository aus.
Wählen Sie die Startpipeline aus.
Fügen Sie den folgenden YAML-Code in die Pipeline ein:
# 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*.Hinweis
Der Artefaktname "CodeAnalysisLogs" ist für die Integration in Defender für Cloud erforderlich. Weitere Toolkonfigurationsoptionen und Umgebungsvariablen finden Sie im Microsoft Security DevOps-Wiki
Wählen Sie Speichern und ausführen aus, um den Commit durchzuführen und die Pipeline zu starten.
Hinweis
Installieren Sie die SARIF SAST Scans Tab-Erweiterung, um SARIF-Analyseergebnisse automatisch auf der Registerkarte "Scans " der Pipeline anzuzeigen.
Hochladen von Ergebnissen aus Sicherheitstools von Drittanbietern in Defender for Cloud
Defender für Cloud kann SARIF-Ergebnisse aus anderen Sicherheitstools einlesen, um Code-zu-Cloud-Transparenz zu gewährleisten. Um diese Ergebnisse hochzuladen, stellen Sie sicher, dass Ihre Azure DevOps-Repositorys in Defender for Cloud integriert sind. Nach dem Onboarding überwacht Defender für Cloud kontinuierlich das Artefakt auf die CodeAnalysisLogs SARIF-Ausgabe.
Verwenden Sie die PublishBuildArtifacts@1 Aufgabe, um SARIF-Dateien im CodeAnalysisLogs-Artefakt zu veröffentlichen. Beispiel:
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: 'results.sarif'
ArtifactName: 'CodeAnalysisLogs'
Defender für Cloud zeigt diese Erkenntnisse unter der Beurteilung Azure DevOps-Repositorys sollten Code-Scan-Ergebnisse gelöst haben für das betroffene Repository an.