Integration von Anti-Malware Scan Interface (AMSI) mit Microsoft Defender Antivirus
Gilt für:
- Microsoft Defender XDR
- Microsoft Defender Antivirus
- Microsoft Defender for Endpoint P1 & P2
- Microsoft Defender für Unternehmen
- Microsoft Defender für Einzelpersonen
Plattformen:
- Windows 10 und höher
- Windows Server 2016 und neuer
Microsoft Defender for Endpoint nutzt die Anti-Malware Scan Interface (AMSI), um den Schutz vor dateiloser Schadsoftware, dynamischen skriptbasierten Angriffen und anderen nicht traditionellen Cyberbedrohungen zu verbessern. In diesem Artikel werden die Vorteile der AMSI-Integration, die unterstützten Skriptsprachen und die Aktivierung von AMSI für eine höhere Sicherheit beschrieben.
Dateilose Schadsoftware spielt eine wichtige Rolle bei modernen Cyberangriffen und verwendet heimliche Techniken, um die Erkennung zu vermeiden. Mehrere große Ransomware-Ausbrüche verwendeten dateilose Methoden als Teil ihrer KillChains.
Dateilose Schadsoftware verwendet vorhandene Tools, die bereits auf einem kompromittierten Gerät vorhanden sind, z. B. PowerShell.exe oder wmic.exe. Schadsoftware kann einen Prozess infiltrieren, Code innerhalb seines Arbeitsspeichers ausführen und diese integrierten Tools aufrufen. Angreifer reduzieren ihren Speicherbedarf erheblich und umgehen herkömmliche Erkennungsmechanismen.
Da Arbeitsspeicher flüchtig ist und dateilose Schadsoftware keine Dateien auf dem Datenträger platziert, kann das Einrichten von Persistenz durch die Verwendung von dateiloser Schadsoftware schwierig sein. Ein Beispiel für die Persistenz von dateiloser Schadsoftware war die Erstellung eines Registrierungsausführungsschlüssels, der ein Einzeilen-PowerShell-Cmdlet startet. Dieser Befehl hat ein verschleiertes PowerShell-Skript gestartet, das im Registrierungsblob gespeichert wurde. Das verschleierte PowerShell-Skript enthielt ein reflektierendes PE-Ladeprogramm (Portable Executable), das ein Base64-codiertes PE aus der Registrierung geladen hat. Das in der Registrierung gespeicherte Skript sorgte dafür, dass die Schadsoftware beibehalten wurde.
Angreifer verwenden mehrere dateilose Techniken, die Schadsoftwareimplantate heimlich und ausweichen lassen können. Zu diesen Techniken gehören:
Reflektierende DLL-Einschleusung Reflektierende DLL-Einschleusung umfasst das manuelle Laden schädlicher DLLs in den Arbeitsspeicher eines Prozesses, ohne dass sich diese DLLs auf dem Datenträger befinden müssen. Die schädliche DLL kann auf einem remote von Angreifern kontrollierten Computer gehostet und über einen mehrstufigen Netzwerkkanal (z. B. TLS-Protokoll) bereitgestellt oder in verschleierter Form in Infektionsvektoren wie Makros und Skripts eingebettet werden. Dies führt dazu, dass der Betriebssystemmechanismus umgangen wird, der das Laden ausführbarer Module überwacht und nachverfolgt. Ein Beispiel für Malware, die reflektierende DLL-Injektion verwendet, ist HackTool:Win32/Mikatz!dha.
Arbeitsspeicher-Exploits Angreifer verwenden dateilose Speicher-Exploits, um beliebigen Code remote auf Opfercomputern auszuführen. Beispielsweise verwendet die UIWIX-Bedrohung den EternalBlue-Exploit, der sowohl von Petya als auch von WannaCry verwendet wurde, um die DoublePulsar-Backdoor zu installieren, die sich vollständig im Arbeitsspeicher des Kernels befindet (SMB Dispatch Table). Im Gegensatz zu Petya und Wannacry löscht UIWIX keine Dateien auf dem Datenträger.
Skriptbasierte Techniken Skriptsprachen bieten leistungsstarke Mittel zum Bereitstellen von ausführbaren Nutzdaten, die nur im Arbeitsspeicher enthalten sind. Skriptdateien können codierte Shellcodes oder Binärdateien einbetten, die sie zur Laufzeit sofort entschlüsseln und über .NET-Objekte oder direkt mit APIs ausführen können, ohne dass sie auf den Datenträger geschrieben werden müssen. Die Skripts selbst können in der Registrierung verborgen, aus Netzwerkdatenströmen gelesen oder manuell von einem Angreifer in der Befehlszeile ausgeführt werden, ohne den Datenträger zu berühren.
Hinweis
Deaktivieren Sie PowerShell nicht, um dateilose Schadsoftware zu blockieren. PowerShell ist ein leistungsstarkes und sicheres Verwaltungstool und für viele System- und IT-Funktionen wichtig. Angreifer verwenden böswillige PowerShell-Skripts als Technik nach der Ausnutzung, die erst erfolgen kann, nachdem bereits eine erste Kompromittierung aufgetreten ist. Sein Missbrauch ist ein Symptom für einen Angriff, der mit anderen schädlichen Aktionen wie Softwareausnutzung, Social Engineering oder Diebstahl von Anmeldeinformationen beginnt. Der Schlüssel besteht darin, zu verhindern, dass ein Angreifer in die Position gelangt, an der er PowerShell missbrauchen kann.
- WMI-Persistenz Einige Angreifer verwenden das WMI-Repository (Windows Management Instrumentation), um schädliche Skripts zu speichern, die dann regelmäßig mithilfe von WMI-Bindungen aufgerufen werden.
Microsoft Defender Antivirus blockiert die meisten Schadsoftware mithilfe generischer, heuristischer und verhaltensbasierter Erkennungen sowie lokaler und cloudbasierter Machine Learning-Modelle. Microsoft Defender Antivirus schützt vor dateiloser Schadsoftware durch die folgenden Funktionen:
- Erkennen von skriptbasierten Techniken mithilfe von AMSI, das die Möglichkeit bietet, PowerShell und andere Skripttypen zu untersuchen, selbst mit mehreren Verschleierungsebenen
- Erkennen und Beheben von WMI-Persistenztechniken durch Überprüfen des WMI-Repositorys in regelmäßigen Abständen und bei jeder Beobachtung von anomalen Verhaltensweisen
- Erkennen der reflektierenden DLL-Injektion durch erweiterte Speicherscantechniken und Verhaltensüberwachung
AMSI bietet eine tiefere Überprüfungsebene für Schadsoftware, die Verschleierungs- und Umgehungstechniken auf den integrierten Windows-Skripthosts verwendet. Durch die Integration von AMSI bietet Microsoft Defender for Endpoint zusätzliche Schutzebenen vor erweiterten Bedrohungen.
- PowerShell
- Jscript
- VBScript
- Windows Script Host (wscript.exe und cscript.exe)
- .NET Framework 4.8 oder höher (Scannen aller Assemblys)
- Windows-Verwaltungsinstrumentation (WMI)
Wenn Sie Microsoft Office 365 verwenden, unterstützt AMSI auch JavaScript, VBA und XLM.
AMSI unterstützt derzeit weder Python noch Perl.
Um AMSI zu aktivieren, müssen Sie die Skriptüberprüfung aktivieren. Weitere Informationen finden Sie unter Konfigurieren von Überprüfungsoptionen für Microsoft Defender Antivirus.
Weitere Informationen finden Sie unter Defender Policy CSP – Windows-Clientverwaltung.
AMSI-APIs (Anti-Malware Scan Interface) stehen Entwicklern und Antivirenanbietern zur Implementierung zur Verfügung.
Andere Microsoft-Produkte wie Exchange und Sharepoint verwenden ebenfalls die AMSI-Integration.
Windows Defender Anwendungssteuerung und AppLocker. Erzwingt strenge Codeintegritätsrichtlinien und erlaubt nur vertrauenswürdigen Anwendungen die Ausführung. Im Kontext dateiloser Schadsoftware sperrt WDAC PowerShell auf den eingeschränkten Sprachmodus, wodurch die erweiterten Sprachfeatures eingeschränkt werden, die zu nicht überprüfbaren Codeausführungen führen können, z. B. direkte .NET-Skripts, Aufrufen von Win32-APIs über das cmdlet Add-Type und Interaktion mit COM-Objekten. Dies entschärft im Wesentlichen PowerShell-basierte, reflektierende DLL-Einschleusungsangriffe.
Die Verringerung der Angriffsfläche hilft Administratoren dabei, sich vor gängigen Angriffsvektoren zu schützen.
Aktivieren Sie den virtualisierungsbasierten Schutz der Codeintegrität. Entschärft Kernel-Speicher-Exploits durch Hypervisor-Codeintegrität (Hypervisor Code Integrity, HVCI), wodurch es schwierig wird, schädlichen Code mithilfe von Sicherheitsrisiken im Kernelmodus zu injizieren.