SOC Prime Bias: Mittel

04 Jun 2026 15:13 UTC

Der Dämon Kommt Später: Ein Havoc Stager Versteckt Sich Hinter Microsoft Defender DLP

Author Photo
SOC Prime Team linkedin icon Folgen
Der Dämon Kommt Später: Ein Havoc Stager Versteckt Sich Hinter Microsoft Defender DLP
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Bedrohungsakteure in Brasilien verbreiten gefälschte elektronische Rechnungen NF-e ZIP-Anhänge, die einen bösartigen MSI-Installer bereitstellen. Der MSI legt eine gefälschte Microsoft Defender Endpoint DLP DLL ab, die tatsächlich als Havoc-Stager fungiert. Einmal gestartet, verbindet sich der Stager mit einem Remote-Command-and-Control-Server, ruft eine Havoc-Nutzlast im Speicher ab und schafft Persistenz durch ein Anmeldeskript als Registrierungswert. Ähnliche Varianten wurden auch auf malaysisch-registrierten Domains beobachtet, die denselben Liefermechanismus verwenden.

Untersuchung

LevelBlue SpiderLabs analysierte das ZIP-Archiv, den VBS-Dropper und das MSI-Paket und entdeckte eine signierte Microsoft-Binärdatei, mpextms.exe, gepaart mit einer unsignierten endpointdlp.dll -Stager. Der Stager enthielt Klartextkonfigurationswerte, einschließlich des Command-and-Control-Hosts, URL-Pfade und eines Mutex-Strings. Netzwerkaufzeichnungen zeigten GET- und POST-Verkehr zu bestimmten IP-Adressen zusammen mit eindeutigen User-Agent-Werten. Forscher identifizierten neun verwandte Stager-Varianten, die dieselbe Versions-Metadaten und Import-Hash teilten.

Milderung

Verteidiger sollten unsignierte DLLs erkennen, die sich als Microsoft Defender Endpoint DLP oder Dragon Data Protection-Komponenten ausgeben, Änderungen an HKCUEnvironmentUserInitMprLogonScriptüberwachen und beim bekannten Mutex-Wert warnen. Die veröffentlichte YARA-Regel sollte eingesetzt werden, um den Stager zu erkennen, bevor er die Havoc-Nutzlast laden kann. Sicherheitsteams sollten auch die Authenticode-Signaturen aller in Archiven bereitgestellten Microsoft-gebundenen Binärdateien überprüfen.

Reaktion

Wird diese Aktivität erkannt, sperren Sie die zugehörigen IP-Adressen und Domains, isolieren Sie die MSI- und DLL-Dateien und entfernen Sie den bösartigen Anmeldeskript Registrierungseintrag. Führen Sie Host-Forensik durch, um zu bestätigen, dass keine in-memory Havoc-Nutzlast aktiv bleibt, und rotieren Sie die Anmeldeinformationen betroffener Benutzer. Relevante Geschäftsteams sollten informiert werden, und E-Mail-Schutzmaßnahmen sollten aktualisiert werden, um ähnliche NF-e-Themen-Anhänge zu blockieren.

graph TB %% Klassendefinitionen classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccffcc classDef operator fill:#ff9900 %% Knoten action_phishing[„<b>Aktion</b> – <b>T1566.001 Phishing: Spearphishing-Anhang</b><br/>Bereitstellung einer bösartigen ZIP-Datei, getarnt als brasilianische NF-e-Rechnung“] class action_phishing action action_vbscript[„<b>Aktion</b> – <b>T1059.005 Befehls- und Skriptinterpreter: Visual Basic</b><br/>Ein verborgenes VBScript startet eine versteckte cmd-Sitzung, die den MSI-Download initiiert“] class action_vbscript action action_download_msi[„<b>Aktion</b> – <b>T1218.007 Proxy-Ausführung signierter Binärdateien: Msiexec</b><br/>Curl wird aufgerufen, um <i>update.msi</i> aus Google Cloud Storage herunterzuladen“] class action_download_msi action action_msi_execution[„<b>Aktion</b> – <b>T1218.007 Proxy-Ausführung signierter Binärdateien: Msiexec</b><br/>Msiexec führt das MSI aus, das die signierte Datei <i>mpextms.exe</i> und die schädliche Datei <i>endpointdlp.dll</i> enthält“] class action_msi_execution action action_dll_sideload[„<b>Aktion</b> – <b>T1218 DLL-Sideloading</b> und <b>T1036.001 Tarnung</b><br/><i>endpointdlp.dll</i> imitiert eine Microsoft-Defender-DLL, besitzt jedoch keine gültige Signatur“] class action_dll_sideload action action_stager_c2[„<b>Aktion</b> – <b>T1102.002 Anwendungsprotokoll: Webprotokolle</b><br/>Der Stager sendet GET /stage/<hex> mit dem benutzerdefinierten User-Agent „Microsoft-Delivery-Optimization/10.1““] class action_stager_c2 action action_download_havoc[„<b>Aktion</b> – <b>T1219 Remote-Access-Tool</b><br/>Der Havoc-Daemon wird über HTTP heruntergeladen und direkt im Speicher ausgeführt, ohne die Festplatte zu berühren“] class action_download_havoc action action_persistence[„<b>Aktion</b> – <b>T1037.001 Anmeldeskript</b><br/>Schreibt HKCU\\Environment\\UserInitMprLogonScript, um <i>mpextms.exe</i> bei der Benutzeranmeldung zu starten“] class action_persistence action action_telemetry[„<b>Aktion</b> – <b>T1102.003 Anwendungsprotokoll: Webprotokolle</b><br/>POST /api/v2/telemetry/diag an den C2-Server“] class action_telemetry action action_defense_evasion[„<b>Aktion</b> – <b>T1027.013 Verschleierte Dateien oder Informationen: Eingebettete Nutzlast</b>, <b>T1027.010 Binäres Padding</b>, <b>T1564.003 Artefakte verbergen</b><br/>Die Nutzlast ist verschlüsselt, Befehle sind verschleiert und werden in versteckten Fenstern ausgeführt“] class action_defense_evasion action %% Verbindungen des Angriffsablaufs action_phishing –>|führt_zu| action_vbscript action_vbscript –>|löst_aus| action_download_msi action_download_msi –>|ruft_auf| action_msi_execution action_msi_execution –>|installiert| action_dll_sideload action_dll_sideload –>|kommuniziert_mit| action_stager_c2 action_dll_sideload –>|erstellt| action_persistence action_stager_c2 –>|lädt_herunter| action_download_havoc action_stager_c2 –>|sendet| action_telemetry action_download_havoc –>|ermöglicht| action_defense_evasion

Angriffsfluss

Simulation Ausführung

Voraussetzung: Der Telemetrie- & Baseline-Vorab-Check muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und die Erzählung MÜSSEN direkt die identifizierten TTPs widerspiegeln und darauf abzielen, die genaue Telemetrie zu generieren, die von der Erkennungslogik erwartet wird.

  • Angriffserzählung & Befehle:
    Ein Angreifer, der bereits einen anfänglichen Zugang zum Opfergerät gewonnen hat, möchte Persistenz über Benutzeranmeldungen hinweg aufrechterhalten. Sie wählen die UserInitMprLogonScript Wert, weil er bevor die Benutzeroberfläche des Benutzers startet, was eine frühzeitige Codeausführung ermöglicht. Der Angreifer platziert eine verdeckte Binärdatei mpextms.exe (eine umbenannte Version von rundll32.exe) im AppData-Ordner des Benutzers und fertigt eine bösartige DLL an endpointdlp.dll an, die das Ausschleusen von Anmeldeinformationen durchführt. Durch das Setzen des Registrierungseintrags auf "%APPDATA%mpextms.exe" "%APPDATA%endpointdlp.dll"stellt der Angreifer sicher, dass bei jeder Anmeldung die DLL über den signierten rundll32.exe Proxy geladen wird, um zu T1218.007 and T1027.013 während naive Binär-Whitelist-Bypassing.

  • Regression Test-Skript:

    # -------------------------------------------------
    # Schritt 1: Ablegen bösartiger Binärdateien (simuliert)
    $payloadDir = "$env:APPDATAMalicious"
    New-Item -ItemType Directory -Path $payloadDir -Force | Out-Null
    
    # Simulierter 'mpextms.exe' – Verwendung von rundll32.exe umbenannt für Realismus
    $src = "$env:SystemRootSystem32rundll32.exe"
    $dstExe = Join-Path $payloadDir "mpextms.exe"
    Copy-Item -Path $src -Destination $dstExe -Force
    
    # Simulierte bösartige DLL (leere Datei zu Testzwecken)
    $dllPath = Join-Path $payloadDir "endpointdlp.dll"
    New-Item -ItemType File -Path $dllPath -Force | Out-Null
    
    # Schritt 2: Erstellung des Persistenz-Registrierungseintrags
    $regPath = 'HKCU:Environment'
    $regName = 'UserInitMprLogonScript'
    $regValue = "`"$dstExe`" `"$dllPath`""
    Set-ItemProperty -Path $regPath -Name $regName -Value $regValue -Force
    
    Write-Host "Persistenzeintrag erstellt: $regName = $regValue"
    # -------------------------------------------------
  • Bereinigung Befehle:

    # Entfernen Sie den Registrierungspersistenzeintrag
    Remove-ItemProperty -Path 'HKCU:Environment' -Name 'UserInitMprLogonScript' -ErrorAction SilentlyContinue
    
    # Löschen Sie die abgelegten Dateien
    $payloadDir = "$env:APPDATAMalicious"
    Remove-Item -Path $payloadDir -Recurse -Force -ErrorAction SilentlyContinue
    
    Write-Host "Bereinigung abgeschlossen."