Tiefgehende Analyse der neuen XWorm-Kampagne, die mehrere themenbezogene Phishing-E-Mails nutzt
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
FortiGuard Labs beobachtete eine mehrstufige Phishing-Kampagne, die den XWorm-Remote-Zugriff-Trojaner über bösartige Excel-Anhänge verteilt. Das Dokument missbraucht CVE-2018-0802 im Microsoft Equation Editor, um eine HTA-Datei abzurufen, die dann einen dateilosen .NET-Loader auslöst, der Prozesshollowing verwendet, um XWorm in einen neu gestarteten Msbuild.exe-Prozess zu injizieren. Der RAT kommuniziert mit seinem C2 über AES-verschlüsselten Datenverkehr und stellt einen breiten Befehlssatz mit Plugin-Unterstützung für erweiterte Kontrolle bereit. Die Kampagne zeigt den raffinierten Einsatz von ‚Living-off-the-land‘-Binärdateien und dateilosen Techniken, um einen dauerhaften Fernzugriff über kompromittierte Endpunkte zu erreichen.
Untersuchung
Analysten rekonstruierten den Ablauf vom Phishing-Mail zum Excel-OLE-Exploit, HTA-Ausführung, PowerShell-basierten .NET-Modul-Download und dem endgültigen Prozesshollowing in Msbuild.exe. Statische und dynamische Überprüfung hoben Base64-codierte Nutzdaten hervor, die in einem JPEG-Bild versteckt sind, wobei die endgültige XWorm-Komponente in den Speicher geladen wurde, ohne während der Ausführung eine entschlüsselte ausführbare Datei auf der Festplatte zu schreiben. Netzwerkaufzeichnungen zeigten AES-verschlüsselte Pakete, die an die C2-Domain berlin101.com über Port 6000 gesendet wurden. Der Bericht katalogisierte auch den umfangreichen Befehlssatz und die Plugin-Architektur von XWorm.
Minderung
FortiGuard empfiehlt, Makro- und OLE-Schutz zu aktivieren, den Patch für CVE-2018-0802 anzuwenden und die Ausführung von Msbuild, PowerShell und HTA-Dateien, die aus E-Mail-Inhalten stammen, einzuschränken. Webfilterung, Anti-Phishing-Kontrollen und IDS/IPS-Signaturen, die an die beobachteten Indikatoren gebunden sind, implementieren, um die Zustellung und Bereitstellung am Gateway zu blockieren. Überwachen Sie verdächtige Prozessbäume – insbesondere Msbuild.exe, das von PowerShell aus gestartet wird -, um frühzeitig auf Exploitation aufmerksam zu werden.
Reaktion
Nach der Erkennung isolieren Sie das betroffene Endgerät, beenden Sie bösartige Prozesse und entfernen Sie das geladene XWorm-Modul aus dem Speicher. Sammeln Sie forensische Artefakte einschließlich der Telemetrie der Befehlszeile, Netzwerkprotokolle und Registrierungsänderungen, um das Eindringen zu erfassen. Setzen Sie potenziell kompromittierte Anmeldeinformationen zurück, aktualisieren Sie die anfällige Equation Editor-Komponente und blockieren Sie die bösartigen Domains und den C2-Server. Wenden Sie Bedrohungsinformationen auf EDR/SIEM-Erkennungen an, um Wiederholungen zu verhindern, und suchen Sie in der Umgebung nach verwandten Aktivitäten.
Angriffsfluss
Erkennungen
Verdächtige PowerShell Strings (über PowerShell)
Ansicht
Verdächtiges LOLBAS MSHTA Defense Evasion Verhalten durch Erkennung der zugehörigen Befehle (über Prozessverwaltung)
Ansicht
Verdächtige PowerShell Strings (über Befehlszeile)
Ansicht
Rufe verdächtige .NET-Methoden von PowerShell auf (über PowerShell)
Ansicht
IOCs (HashSha256) zur Erkennung: Tiefer Einblick in die neue XWorm-Kampagne mit mehreren thematisierten Phishing-E-Mails
Ansicht
XWorm-Kampagne, die CVE-2018-0802 mit mehreren Angriffsvektoren ausnutzt [Windows Prozess-Erstellung]
Ansicht
Erkenne Base64-codierte PowerShell-Nutzdaten in der XWorm-Kampagne [Windows PowerShell]
Ansicht
Simulation Execution
Voraussetzung: Der Telemetrie- & Basislinien-Preflight-Check muss bestanden haben.
Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der Gegnertechnik (TTP), die entwickelt wurde, um die Erkennungsregel auszulösen. Die Befehle und Erzählungen MÜSSEN die identifizierten TTPs direkt widerspiegeln und zielen darauf ab, die von der Erkennungslogik erwartete Telemetrie genau zu erzeugen.
-
Angriffsnarrativ & Befehle:
- Erste Lieferung: Der Angreifer liefert eine bösartige Excel-Datei, die CVE-2018-0802 ausnutzt. Für die Simulation umgehen wir den Exploit und starten direkt die Nutzdaten.
- Prozesshollowing über EQNEDT32.EXE: Start
EQNEDT32.EXEmit einer Befehlszeile, dieShellExecuteExW()aufruft, um als legitime Office-Komponente zu fungieren. - Msbuild.exe seitliche Ausführung: Starten
Msbuild.exemitCreateProcessA(), um eine versteckte .NET-Nutzdaten spontan zu kompilieren. - Dateilose .NET-Ausführung: Use
powershell.exemit einem Base64-codierten Befehl, der eine reflektierende .NET-Assembly lädt (T1620). Die Befehlszeile enthält den wörtlichen StringCreateProcessA(), um die Regel zu erfüllen.
-
Regression Test Script:
<# Simuliert die XWorm-Ausführungskette: 1. EQNEDT32.exe mit ShellExecuteExW() 2. Msbuild.exe mit CreateProcessA() 3. PowerShell mit einem kodierten .NET-Reflektionsladeprogramm, das CreateProcessA() enthält #> # 1. EQNEDT32.exe (Prozesshollowing) $eqnPath = "$env:SystemRootSystem32EQNEDT32.EXE" $eqnArgs = "-Command "ShellExecuteExW()"" Start-Process -FilePath $eqnPath -ArgumentList $eqnArgs -WindowStyle Hidden # 2. Msbuild.exe (Dynamische DLL-Injektion) $msbuildPath = "$env:ProgramFilesMicrosoft Visual Studio2022CommunityMSBuildCurrentBinMsbuild.exe" $msbuildArgs = "/t:Compile /p:UseShellExecute="CreateProcessA()"" Start-Process -FilePath $msbuildPath -ArgumentList $msbuildArgs -WindowStyle Hidden # 3. PowerShell (Dateilose .NET-Reflektionsladung) # Beispiel .NET-Nutzdaten (Platzhalter) kodiert in Base64 $payload = "W3siQmFzZURhdGEiOiAiIiB9XQ==" # Dummy-Base64 $psArgs = "-EncodedCommand $payload -ArgumentList "CreateProcessA()"" Start-Process -FilePath "powershell.exe" -ArgumentList $psArgs -WindowStyle Hidden Write-Host "XWorm-Simulation abgeschlossen." -
Bereinigungsbefehle:
# Beenden Sie alle verbleibenden Simulationsprozesse Get-Process -Name "EQNEDT32","Msbuild","powershell" -ErrorAction SilentlyContinue | Stop-Process -Force # Optionale Entfernung von temporären Dateien (keine in dieser reinen Prozessesimulation erstellt) Write-Host "Bereinigung abgeschlossen."