Informationen zur Microsoft Security Code Analysis
Hinweis
Ab dem 31. Dezember 2022 wird die MsCA-Erweiterung (Microsoft Security Code Analysis) eingestellt. MSCA wird durch die Microsoft Security DevOps Azure DevOps Erweiterungersetzt. Befolgen Sie die Anweisungen in Konfigurieren von, um die Erweiterung zu installieren und zu konfigurieren.
Mit der Erweiterung für die Sicherheitscodeanalyse von Microsoft können Teams Sicherheitscodeanalysen zu ihren Azure DevOps-Pipelines für Continuous Integration und Continuous Delivery (CI/CD) hinzufügen. Diese Analyse wird von den Secure Development Lifecycle (SDL) Experten bei Microsoft empfohlen.
Eine konsistente UX vereinfacht die Sicherheit, indem die Komplexität der ausgeführten Tools ausgeblendet wird. Mit der nuGet-basierten Bereitstellung der Tools müssen Teams die Installation oder Aktualisierung von Tools nicht mehr verwalten. Mit Befehlszeilen- und Basisschnittstellen für Buildaufgaben können alle Benutzer beliebig viel Kontrolle über die Tools haben.
Auch Teams können leistungsstarke Nachbearbeitungsfunktionen verwenden, z. B.:
- Veröffentlichen von Protokollen für die Aufbewahrung.
- Erstellen von umsetzbaren, entwicklerorientierten Berichten.
- Konfigurieren von Buildunterbrechungen für Regressionstests.
Warum sollte ich microsoft Security Code Analysis verwenden?
Sicherheit vereinfacht
Das Hinzufügen von Microsoft Security Code Analysis Tools zu Ihrer Azure DevOps-Pipeline ist so einfach wie das Hinzufügen neuer Aufgaben. Passen Sie die Aufgaben an, oder verwenden Sie ihr Standardverhalten. Aufgaben werden als Teil Ihrer Azure DevOps-Pipeline ausgeführt und erstellen Protokolle, die viele Arten von Ergebnissen detailliert erläutern.
Bereinigen von Builds
Nachdem Sie die anfänglichen Probleme behoben haben, die von den Tools gemeldet wurden, können Sie die Erweiterung so konfigurieren, dass bei neuen Problemen der Build-Prozess abgebrochen wird. Das Einrichten von Continuous-Integration-Builds für jede Pull-Anfrage ist einfach.
Legen Sie es fest, und vergessen Sie es.
Standardmäßig bleiben die Buildaufgaben und -tools up-to-date. Wenn eine aktualisierte Version eines Tools vorhanden ist, müssen Sie es nicht herunterladen und installieren. Die Erweiterung übernimmt das Aktualisieren für Sie.
Unter der Haube
Die Buildaufgaben der Erweiterung blenden die Komplexitäten aus:
- Ausführen von statischen Sicherheitsanalysetools.
- Verarbeiten der Ergebnisse aus Protokolldateien zum Erstellen eines Zusammenfassungsberichts oder Zum Unterbrechen des Builds.
Microsoft Security Code Analysis Toolset
Die Microsoft Security Code Analysis-Erweiterung stellt Ihnen die neuesten Versionen wichtiger Analysetools bereit. Die Erweiterung umfasst sowohl von Microsoft verwaltete Tools als auch Open-Source-Tools.
Diese Tools werden automatisch in den in der Cloud gehosteten Agent heruntergeladen, nachdem Sie die entsprechende Buildaufgabe zum Konfigurieren und Ausführen der Pipeline verwendet haben.
In diesem Abschnitt werden die Tools aufgeführt, die derzeit in der Erweiterung verfügbar sind. Achten Sie auf das Hinzufügen weiterer Tools. Senden Sie uns auch Ihre Vorschläge für Tools, die Sie hinzufügen möchten.
Antischadsoftwarescanner
Die Buildaufgabe "Antischadsoftwarescanner" ist jetzt in der Microsoft Security Code Analysis-Erweiterung enthalten. Diese Aufgabe muss auf einem Build-Agent ausgeführt werden, der Windows Defender bereits installiert hat. Weitere Informationen finden Sie auf der Windows Defender-Website.
BinSkim
BinSkim ist ein einfacher Portable Executable (PE)-Scanner, der Compilereinstellungen, Linkereinstellungen und andere sicherheitsrelevante Merkmale von Binärdateien überprüft. Diese Buildaufgabe bietet einen Befehlszeilenwrapper um die "binskim.exe"-Konsolenanwendung. BinSkim ist ein Open-Source-Tool. Weitere Informationen finden Sie unter BinSkim auf GitHub.
Zugangsdaten-Scanner
Kennwörter und andere geheime Schlüssel, die im Quellcode gespeichert sind, stellen ein erhebliches Problem dar. Credential Scanner ist ein proprietäres statisches Analysetool, das hilft, dieses Problem zu lösen. Das Tool erkennt Anmeldeinformationen, Geheimnisse, Zertifikate und andere vertrauliche Inhalte in Ihrem Quellcode und Ihrer Buildausgabe.
Roslyn-Analysatoren
Roslyn Analyzers ist das compilerintegrte Tool von Microsoft zum statischen Analysieren von verwaltetem C#- und Visual Basic-Code. Weitere Informationen finden Sie in Roslyn-basierte Analysatoren.
TSLint
TSLint ist ein erweiterbares, statisches Analysetool, mit dem TypeScript-Code auf Lesbarkeit, Wartung und Fehler in der Funktionalität überprüft wird. Es wird von modernen Editoren und Buildsystemen weit unterstützt. Sie können es mit Ihren eigenen Lintregeln, Konfigurationen und Formatierern anpassen. TSLint ist ein Open-Source-Tool. Weitere Informationen finden Sie unter TSLint auf GitHub.
Analyse und Nachbearbeitung von Ergebnissen
Die Microsoft Security Code Analysis-Erweiterung verfügt auch über drei Aufgaben nach der Verarbeitung. Diese Aufgaben helfen Ihnen, die Ergebnisse zu analysieren, die von den Sicherheitswerkzeug-Aufgaben gefunden wurden. Wenn sie einer Pipeline hinzugefügt werden, folgen diese Aufgaben in der Regel allen anderen Toolaufgaben.
Sicherheitsanalyseprotokolle veröffentlichen
Die Buildaufgabe "Sicherheitsanalyseprotokolle veröffentlichen" behält die Protokolldateien der Sicherheitstools bei, die während des Builds ausgeführt werden. Sie können diese Protokolle zur Untersuchung und Nachverfolgung lesen.
Sie können die Protokolldateien als .zip Datei in Azure Artifacts veröffentlichen. Sie können sie auch von Ihrem privaten Build-Agenten in eine zugängliche Dateifreigabe kopieren.
Sicherheitsbericht
Die Buildaufgabe "Sicherheitsbericht" analysiert die Protokolldateien. Diese Dateien werden von den Sicherheitstools erstellt, die während des Builds ausgeführt werden. Die Buildaufgabe erstellt dann eine einzelne Zusammenfassungsberichtsdatei. Diese Datei zeigt alle Probleme an, die von den Analysetools gefunden wurden.
Sie können diese Aufgabe so konfigurieren, dass Ergebnisse für bestimmte Tools oder für alle Tools angezeigt werden. Sie können auch auswählen, welche Problemstufe gemeldet werden soll, z. B. nur Fehler oder sowohl Fehler als auch Warnungen.
Nachanalyse (Build-Unterbrechung)
Mit der Buildaufgabe "Nachanalyse" können Sie eine Build-Unterbrechung einfügen, die bewusst zu einem Buildfehler führt. Wenn eines oder mehrere Analysetools Probleme im Code melden, führen Sie einen Build-Stopp durch.
Sie können diese Aufgabe konfigurieren, um den Build bei Problemen zu unterbrechen, die von bestimmten Tools oder allen Tools gefunden werden. Sie können sie auch basierend auf dem Schweregrad der gefundenen Probleme konfigurieren, z. B. Fehler oder Warnungen.
Hinweis
Standardmäßig ist jeder Buildvorgang erfolgreich, wenn der Vorgang erfolgreich abgeschlossen ist. Dies gilt, unabhängig davon, ob ein Tool Probleme findet, sodass der Build bis zum Abschluss ausgeführt werden kann, indem alle Tools ausgeführt werden können.
Nächste Schritte
Anweisungen zum Onboarding und Installieren von Microsoft Security Code Analysis finden Sie in unserem Onboarding- und Installationshandbuch.
Weitere Informationen zum Konfigurieren der Buildaufgaben finden Sie in unserem Konfigurationshandbuch oder YAML-Konfigurationshandbuch.
Wenn Sie weitere Fragen zu der Erweiterung und den angebotenen Tools haben, schauen Sie sich unsere FAQ-Seitean.