Gina Sanders - stock.adobe.com

Microsoft Attack Surface Analyzer: Schwachstellen aufspüren

Microsoft bietet mit dem Attack Surface Analyzer ein Open-Source-Tool, mit dem sich Schwachstellen in Windows finden lassen. Admins können so die Angriffsfläche verringern.

Mit der neuen Version 2.0 des Attack Surface Analyzers können Entwickler, Anwender und Administratoren nach Sicherheitslücken in Windows suchen. Die neue Version 2.0 funktioniert auch für Linux und macOS. So lassen sich in Microsoft-Umgebungen auch andere Betriebssysteme untersuchen. Attack Surface Analyzer 2.0 basiert auf .NET Core und wird als Open-Source-Lösung zur Verfügung gestellt.

Was kann der Attack Surface Analyzer?

Eine der wichtigsten Aufgaben des Attack Surface Analyzers besteht darin, einen Computer vor und nach der Installation von Software oder Anpassungen in Windows zu untersuchen. Durch die Unterschiede können unter Umständen Sicherheitslücken entstehen, die der Attack Surface Analyzer aufdeckt. Das hilft sowohl Entwicklern, als auch Administratoren, um die Sicherheit von Systemen zu gewährleisten.

Zusätzlich wird durch das Tool auch erkannt, ob Anwendungen unerlaubte Erweiterungen installieren, Firewall-Regeln erstellen, oder sonst irgendwie sicherheitsrelevante Einstellungen in Windows, Linux oder macOS verschlechtern. Berechtigungen, die eine Anwendung unerlaubt anpasst, lassen sich dadurch erkennen und wieder anpassen, nachdem die Anwendung installiert ist.  Der Attack Surface Analyzer untersucht die Registry, Anpassungen am Dateisystem, die Systemdienste und die Netzwerk-Ports. Auch die Zertifikate werden überwacht, das gilt auch für das Installieren von neuen Zertifikaten.

Den Attack Surface Analyzer richtig einsetzen

Sinnvollerweise wird der Attack Surface Analyzer auf einem Testcomputer betrieben, zum Beispiel einem virtuellen Computer. Vor der Installation einer neuen Anwendung in der Umgebung wird diese auf dem Testcomputer installiert. Zuvor und danach wird mit dem Attack Analyzer ein Snapshot des Computers erstellt. Dadurch wird erkannt, welche Änderungen die Anwendung an einem System durchführt. Die Änderungen können dann entweder akzeptiert werden oder nicht.

Abbildung 1: So kann die grafische Oberfläche des Microsoft Attack Surface Analyzer direkt gestartet werden.
Abbildung 1: So kann die grafische Oberfläche des Microsoft Attack Surface Analyzer direkt gestartet werden.

Eine Installation des Tools ist nicht notwendig. Je nach Einsatz kann die grafische Oberfläche des Tools direkt gestartet werden. Hier kann über den Menüpunkt Scan mit Static Scan der Scanvorgang gestartet werden. Danach erfolgt die Analyse über den Menüpunkt Results. Hier lassen sich Scans miteinander vergleichen.

Abbildung 2: Mit Static Scan kann in der Oberfläche ein erster Scan gestartet werden. Elemente wie Zertifikate oder Dateien lassen sich hier auswählen.
Abbildung 2: Mit Static Scan kann in der Oberfläche ein erster Scan gestartet werden. Elemente wie Zertifikate oder Dateien lassen sich hier auswählen.

Scans lassen sich auch skripten. Dazu stellt Microsoft auf Github auch Versionen mit Befehlszeile zur Verfügung, zum Beispiel „AsaCli……..“. Auch eine grafische Oberfläche, mit welcher der Zugriff über einen Webbrowser möglich ist, wird mit ausgeliefert. Dazu wird, wie oben beschrieben, die Datei AttackSurfaceAnalyzer-GUI.exe mit Administratorrechten gestartet. Danach kann der Zugriff mit der Adresse http://localhost:5000 erfolgen.

Nach dem Starten der grafischen Oberfläche wird über den Menüpunkt Scan ein erster Start durchgeführt. Hier wird auch eine Run Id für den Scan definiert. Mit der Schaltfläche Collect Data wird der Vorgang gestartet. Das Scannen dauert einige Zeit. Anschließend können die Änderungen in Windows, Linux oder macOS vorgenommen werden, zum Beispiel über die Installation einer Anwendung.

Abbildung 3: Liegen die Ergebnisse des ersten Scans vor, kann man die Änderungen am System vornehmen, um dann einen vergleichenden Scan zu starten.
Abbildung 3: Liegen die Ergebnisse des ersten Scans vor, kann man die Änderungen am System vornehmen, um dann einen vergleichenden Scan zu starten.

Wird danach der Scanvorgang erneut gestartet, können sich Unterschiede ergeben, die auf der Registerkarte Results angezeigt werden. Dazu wird bei Base Run Id die Run Id des ersten Scans ausgewählt und bei Product Run Id der Scan, der nach der Installation der Anwendung durchgeführt wurde. Mit Run Analysis wird der Vorgang gestartet. 

Abbildung 4: Liegen die Ergebnisse des ersten Scans vor, kann man die Änderungen am System vornehmen, um dann einen vergleichenden Scan zu starten.
Abbildung 4: Liegen die Ergebnisse des ersten Scans vor, kann man die Änderungen am System vornehmen, um dann einen vergleichenden Scan zu starten.

Nach dem Scannen wird das Ergebnis angezeigt und kann auch exportiert werden. Im Bereich Select a type of result to view kann ausgewählt werden, welche Bereiche aus dem Ergebnis angezeigt werden sollen. Bei Registry werden zum Beispiel die geänderten Registry-Einträge angezeigt.

Durchführen eines Scanvorgangs per Befehlszeile

Wir die CLI-Version des Attack Surface Analyzers heruntergeladen, lassen sich die Vorgänge auch skripten. Dazu wird die CLI-Variante mit folgender Syntax gestartet:

AttackSurfaceAnalyzerCli.exe collect --user --runid user1

Asalaunch collect --user --runid user2

AttackSurfaceAnalyzerCli.exe collect --user --runid user1

AttackSurfaceAnalyzerCli.exe collect --user --runid user2

Asalaunch compare

Attacksurfaceanalyzercli compare

Die Ergebnisse der Befehlszeilenversion des Attack Surface Analyzers lassen sich in lokale HTML- oder JSON-Dateien schreiben, so dass sie gegebenenfalls automatisiert weiter verarbeitet werden können.

Nächste Schritte

Gratis-eBook: Windows-10-Systeme sicherer machen

Windows 10 richtig absichern

Anwendungen unter Windows 10 isoliert testen und betreiben

Erfahren Sie mehr über Anwendungs- und Plattformsicherheit