Eine neue Technik zur Befehlsausführung namens „GrimResource“ nutzt speziell präparierte MSC-Dateien (Microsoft Saved Console) und eine ungepatchte XSS-Schwachstelle in Windows, um Code über die Microsoft Management Console auszuführen.

Hintergrund und Entwicklung

Im Juli 2022 deaktivierte Microsoft standardmäßig Makros in Office, wodurch Angreifer gezwungen wurden, neue Dateitypen für Phishing-Angriffe zu verwenden. Zunächst griffen sie auf ISO-Images und passwortgeschützte ZIP-Dateien zurück, da diese die „Mark of the Web“ (MoTW)-Kennzeichnung nicht korrekt auf extrahierte Dateien übertrugen.

Nachdem Microsoft dieses Problem in ISO-Dateien behoben und 7-Zip die Option hinzugefügt hatte, MoTW-Kennzeichnungen zu übertragen, mussten Angreifer auf neue Anhänge wie Windows-Shortcuts und OneNote-Dateien umsteigen. Nun haben sie sich auf Windows MSC-Dateien (.msc) verlegt, die in der Microsoft Management Console (MMC) verwendet werden, um verschiedene Aspekte des Betriebssystems zu verwalten oder benutzerdefinierte Ansichten oft genutzter Tools zu erstellen.

Missbrauch von MSC-Dateien

Die südkoreanische Cybersicherheitsfirma Genian berichtete erstmals über den Missbrauch von MSC-Dateien zur Malware-Verteilung. Angeregt durch diese Forschung entdeckte das Elastic-Team eine neue Technik zur Verteilung von MSC-Dateien und zum Missbrauch einer alten, ungepatchten Windows XSS-Schwachstelle in der apds.dll, um Cobalt Strike zu deployen.

Elastic fand eine Probe (’sccm-updater.msc‘), die am 6. Juni 2024 auf VirusTotal hochgeladen wurde und GrimResource nutzt. Beunruhigend ist, dass keine Antiviren-Engines auf VirusTotal die Datei als bösartig eingestuft haben. Diese Kampagne nutzt die Technik, um Cobalt Strike für den initialen Netzwerkzugriff zu deployen, könnte jedoch auch andere Befehle ausführen.

Die Forscher bestätigten gegenüber BleepingComputer, dass die XSS-Schwachstelle in der neuesten Version von Windows 11 noch ungepatcht ist.

Funktionsweise von GrimResource

Der GrimResource-Angriff beginnt mit einer bösartigen MSC-Datei, die versucht, eine alte, auf DOM-basierende Cross-Site Scripting (XSS)-Schwachstelle in der apds.dll-Bibliothek auszunutzen, die die Ausführung von beliebigem JavaScript durch eine präparierte URL ermöglicht.

Die Schwachstelle wurde im Oktober 2018 an Adobe und Microsoft gemeldet. Während beide Unternehmen Untersuchungen durchführten, entschied Microsoft, dass der Fall nicht die Kriterien für eine sofortige Behebung erfüllte. Stand März 2019 blieb die XSS-Schwachstelle ungepatcht, und es ist unklar, ob sie jemals behoben wurde. BleepingComputer kontaktierte Microsoft, um zu bestätigen, ob die Schwachstelle gepatcht wurde, erhielt jedoch keine sofortige Antwort.

Die bösartige MSC-Datei enthält eine Referenz auf die anfällige APDS-Ressource im StringTable-Bereich. Wenn das Ziel diese öffnet, verarbeitet MMC sie und löst die JS-Ausführung im Kontext von ‚mmc.exe‘ aus.

Elastic erklärt, dass die XSS-Schwachstelle mit der ‚DotNetToJScript‘-Technik kombiniert werden kann, um beliebigen .NET-Code über die JavaScript-Engine auszuführen und dabei alle Sicherheitsmaßnahmen zu umgehen. Die untersuchte Probe verwendet ‚transformNode‘-Verschleierung, um ActiveX-Warnungen zu vermeiden, während der JS-Code ein VBScript rekonstruiert, das DotNetToJScript verwendet, um eine .NET-Komponente namens ‚PASTALOADER‘ zu laden.

PASTALOADER ruft eine Cobalt Strike-Nutzlast aus den von VBScript gesetzten Umgebungsvariablen ab, startet eine neue Instanz von ‚dllhost.exe‘ und injiziert diese mithilfe der ‚DirtyCLR‘-Technik in Kombination mit Funktionsentfernung und indirekten Systemaufrufen.

Elastic-Forscher Samir Bousseaden zeigte eine Demonstration des GrimResource-Angriffs auf X.

Abwehr von GrimResource

Systemadministratoren wird geraten, auf folgende Anzeichen zu achten:

  • Dateioperationen, die apds.dll durch mmc.exe aufrufen.
  • Verdächtige Ausführungen über MMC, insbesondere Prozesse, die von mmc.exe mit .msc-Datei-Argumenten gestartet werden.
  • RWX-Speicherzuweisungen durch mmc.exe, die von Skript-Engines oder .NET-Komponenten ausgehen.
  • Ungewöhnliche .NET COM-Objekterstellungen innerhalb nicht standardmäßiger Skriptinterpreter wie JScript oder VBScript.
  • Temporäre HTML-Dateien, die im INetCache-Ordner aufgrund von APDS-XSS-Umleitungen erstellt werden.

Elastic Security hat eine vollständige Liste der GrimResource-Indikatoren auf GitHub veröffentlicht und YARA-Regeln bereitgestellt, um Verteidigern zu helfen, verdächtige MSC-Dateien zu erkennen.