Mirage Kitten verbreitet NodeRabbit und PollCat durch Jobangebot-Köder
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Der Iran-verbundene Bedrohungsakteur Mirage Kitten führt eine Cyber-Spionagekampagne durch, die sich auf Softwareingenieure mit falschen Personalvermittlerprofilen konzentriert. Die Angreifer verteilen mit Trojanern versehene Coding-Challenges, die zwei neu identifizierte plattformübergreifende RATs liefern, NodeRabbit und PollCat. Beide Malware-Familien missbrauchen Node.js-Umgebungen, um Persistenz und Fernzugriff auf Windows-, Linux- und macOS-Systemen herzustellen.
Untersuchung
Kaspersky identifizierte die Aktivitäten, nachdem ein NodeRabbit-Muster in Afghanistan entdeckt wurde und später weiterentwickelte Varianten in Ägypten und Äthiopien aufgedeckt wurden. Die Untersuchung enthüllte eine ausgeklügelte Infektionskette, die bösartige npm-Pakete in legitimen Webanwendungsarchiven verbirgt. Forscher identifizierten auch PollCat, das über eine separate, auf React basierende Coding-Challenge operiert.
Minderung
Organisationen sollten strenge Kontrollen über Drittanbieter-NPM-Paketabhängigkeiten durchsetzen und KI-gestützte Code-Review-Tools verwenden, um verdächtige Importe oder Verhaltensweisen zu erkennen. Entwickler sollten geschult werden, um Social-Engineering-Versuche auf professionellen Networking-Plattformen zu erkennen. Sicherheitsteams sollten auch nicht autorisierte Visual Studio Code-Erweiterungen und unerwartete Änderungen an Git-Hooks überwachen.
Reaktion
Wenn bösartige Aktivitäten festgestellt werden, sollten betroffene Entwickler-Arbeitsstationen sofort isoliert werden, um seitliche Bewegungen und weitere C2-Kommunikation zu verhindern. Responder sollten lokale node_modules Verzeichnisse, Git-Hooks und VS-Code-Erweiterungen auf unautorisierte oder verdächtige Dateien überprüfen. Cloud-Infrastrukturprotokolle, insbesondere von Azure und Cloudflare, sollten ebenfalls auf anomale Verbindungen untersucht werden, die aus Entwicklerumgebungen stammen.
Angriffsablauf
Erkennungen
Powershell führt Datei in verdächtigem Verzeichnis unter Umgehung der Ausführungsrichtlinien aus (über cmdline)
Möglicher Node durch bekannten missbrauchten Prozess gestartet (über cmdline)
Node.Js führt Datei in ungewöhnlichem Verzeichnis aus (über cmdline)
IOCs (HashSha256) zum Erkennen: Das Jobangebot hat Klauen: Mirage Kitten setzt NodeRabbit und PollCat ein
Überprüfung von NodeRabbit-Proxy-Umgebungsvariablen und HTTP-CONNECT-Tunneling [Proxy]
Mirage Kitten NodeRabbit und PollCat RAT-Erkennung [Windows-Prozesserstellung]
Erkennung von NodeRabbit RAT in Trojanisierten Coding-Challenges [Linux-Prozesserstellung]
Simulation-Ausführung
-
Angriffserzählung & Befehle: Der Gegner hat erfolgreich einen Entwickler dazu gebracht, ein bösartiges „Coding-Challenge“-Repository auszuführen. Der Entwickler führt ein Node.js-Skript aus, das eine Codierungsumgebung simulieren soll. Das Skript enthält jedoch
taskflowArgument, das Teil der Initialisierungsroutine des NodeRabbit RATs ist. Ziel ist es, einen Fernzugriffspunkt zu etablieren, indem es sich als legitimes Entwicklungstool tarnt. Die Ausführung vonnode taskflow.jswird die genaue Befehlszeilentelemetrie erzeugen, die erforderlich ist, um die Regel auszulösen. -
Regressions-Testskript:
# Simulationsskript für NodeRabbit RAT-Erkennung # Dieses Skript erstellt eine Dummy-Javascript-Datei und führt sie mit Node.js # unter Verwendung des spezifischen Arguments 'taskflow' aus, um die Erkennungsregel auszulösen. $dummyFile = "challenge_setup.js" "console.log('Initialisierung der Coding-Challenge...');" | Out-File -FilePath $dummyFile -Encoding utf8 Write-Host "[+] Simulation der NodeRabbit RAT-Ausführung über das taskflow-Argument..." -ForegroundColor Cyan # Auslösung der Erkennung: node <filename> <trigger_string> node $dummyFile taskflow Write-Host "[+] Simulationsbefehl ausgeführt." -ForegroundColor Green -
Aufräumbefehle:
# Bereinigungsskript, um Simulationsartefakte zu entfernen Remove-Item -Path "challenge_setup.js" -ErrorAction SilentlyContinue Write-Host "[+] Bereinigung abgeschlossen. Simulationsartefakte entfernt." -ForegroundColor Yellow