Jagd auf Lazarus: Einblick in die ansteckende Interview-C2-Infrastruktur
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Red Asgard berichtete über eine Kompromittierung der Lieferkette im Zusammenhang mit einem Kryptowährungsprojekt, das über Upwork beworben wurde, bei dem Lazarus-Betreiber bösartigen Code in den Build/Workflow eingebettet haben. Die Kette missbraucht die Autoausführung von VSCode-Aufgaben, eine Node.js-Hintertür, die durch den Function-Konstruktor implementiert wurde, und die durch Cookies gesteuerte Bereitstellung von Nutzlasten, um bösartiges JavaScript von einer Vercel-gehosteten Command-and-Control-Infrastruktur abzurufen. Der C2-Stack ist in Vercel-Domains der ersten Stufe und dedizierte Windows-Server der zweiten Stufe aufgeteilt, die eine stark verschleierte Python-Hintertür mit XMRig-Mining-Funktionalität liefern. Die Kampagne verwendet auch Pastebin-Totbriefe, ein benutzerdefiniertes Binärprotokoll und eine strikte Trennung von Zugangsdaten, um die Analyse und Beseitigung zu erschweren.
Untersuchung
Die Forscher zählten drei Vercel-Domains auf, die Token-authentifizierte Endpunkte bereitstellen, und identifizierten fünf dedizierte C2-Systeme, die Express.js on Port 1244ausführen. Sie dokumentierten auch eine Timing-Oracle-Technik, die verwendet wurde, um aktive Kampagnen-Token zu ermitteln oder aufzulisten. Das Reverse Engineering einer 64-schichtigen verschleierten Nutzlast offenbarte letztendlich eine trojanisierte Komponente, die durch die Platzierung im Autostart-Ordner und die Erstellung geplanter Aufgaben persistiert. Weitere Funde umfassten hartcodierte MongoDB-Anmeldeinformationen, etwa 1.000 Pastebin-Totbriefe-URLs und benutzerdefinierte Z238-Binärprotokoll-Listener auf mehreren Ports.
Minderung
Blockieren Sie ausgehende Kommunikationen zu den identifizierten Vercel-Domains und beschränken Sie den Abgang auf die Ports 1244, 1249 und 22411–22412. Überwachen Sie die Erstellung von Windows Update Script.pyw in Autostart-Ordnern, geplante Aufgaben mit dem Namen „Runtime Broker“ und verdächtige Ausführungen von msedge.exe, die mit Miner-Verkleidung übereinstimmen. Erkennen Sie Node.js-Prozesse, die Function.constructor aufrufen, sowie anomales HTTP-POST-Verhalten zu /keys-Endpunkten. Reduzieren Sie die Exposition, indem Sie die Automatisierung von VSCode-Aufgaben deaktivieren und Paketskripte vor der Ausführung von npm install oder dem Ausführen von Build-Schritten in nicht vertrauenswürdigen Repositories überprüfen.
Reaktion
Wenn Indikatoren beobachtet werden, isolieren Sie das betroffene System, beenden Sie verdächtige Prozesse und bewahren Sie Speicher- und Festplattenartefakte für eine forensische Überprüfung. Widerrufen Sie jegliche offengelegten MongoDB-Anmeldeinformationen und rotieren Sie alle relevanten Dienstkontogeheimnisse. Führen Sie eine Konto- und Zugriffsübersicht durch, um betroffene Benutzer zu identifizieren, setzen Sie dann Anmeldedaten zurück und entwerten Sie aktive Sitzungen/Tokens. Benachrichtigen Sie interne Stakeholder und koordinieren Sie sich mit Strafverfolgungsbehörden, wenn es Hinweise auf Kryptowährungsdiebstahl oder Wallet-Kompromittierung gibt.
Angriffsablauf
Erkennungen
Mögliche Dateninfiltration / -exfiltration / C2 über Drittdienste / -tools (über dns)
Ansehen
Verdächtige Änderungen der Windows Defender-Einstellungen (über PowerShell)
Ansehen
Verdächtiges Binärprogramm / Skripte im Autostart-Ort (über file_event)
Ansehen
Versteckte Datei wurde auf Linux-Host erstellt (via file_event)
Ansehen
Mögliche Dateninfiltration / -exfiltration / C2 über Drittanbieter-Dienste / -Tools (via proxy)
Ansehen
IOCs (E-Mails) zur Erkennung: Hunting Lazarus: Inside the Contagious Interview C2 Infrastructure
Ansehen
IOCs (DestinationIP) zur Erkennung: Hunting Lazarus: Inside the Contagious Interview C2 Infrastructure
Ansehen
IOCs (SourceIP) zur Erkennung: Hunting Lazarus: Inside the Contagious Interview C2 Infrastructure
Ansehen
IOCs (HashSha256) zur Erkennung: Hunting Lazarus: Inside die Contagious Interview C2 Infrastructure
Ansehen
Verdächtige getCookie-Funktion, die bösartigen JavaScript von Vercel-Domäne abruft [Windows File Event]
Ansehen
Verdächtiger Einsatz von Function.constructor in errorHandler.js für Backend-RCE [Windows File Event]
Ansehen
Tarnung bösartiger Prozesse als RuntimeBroker und XMRig Miner als msedge.exe [Windows Prozess-Erstellung]
Ansehen
Bösartige VSCode Auto-Ausführungs-Konfiguration [Windows File Event]
Ansehen
Simulation Ausführung
Voraussetzung: Der Telemetrie- & Basislinien-Pre‑flight-Check muss bestanden sein.
Angriffsablauf & Befehle
Der Angreifer kopiert die legitime RuntimeBroker.exe Binärdatei an einen unüblichen Standort (%TEMP%), um sich als vertrauenswürdiger Prozess zu tarnen und so die Erkennung durch bekannte Systempfade zu umgehen. Durch die Ausführung der Kopie enthält das Prozess-Erstellungs-Ereignis den erwarteten Bildnamen, jedoch einen Pfad, der in der „System32“-Einschlussprüfung fehlschlägt, wodurch selection_runtime.
Regressionstest-Skript
# -----------------------------------------------
# TC-20260114-A1B2C – Tarnungs-Simulation
# -----------------------------------------------
# 1. Definiere Pfade
$src = "$env:SystemRootSystem32RuntimeBroker.exe"
$dest = "$env:TEMPRuntimeBroker.exe"
# 2. Kopiere die legitime Binärdatei in ein Nicht-Systemverzeichnis
Copy-Item -Path $src -Destination $dest -Force
# 3. Führe die kopierte Binärdatei aus (dies sollte die Sigma-Regel auslösen)
Start-Process -FilePath $dest -WindowStyle Hidden
# 4. OPTIONAL: Simuliere das msedge-Tarnungs-(Miner)-Szenario
# (Kopiere eine beliebige harmlose ausführbare Datei, benenne sie in msedge.exe um und platziere sie unter %LOCALAPPDATA%MicrosoftWindowsApplications)
$minerSrc = "$env:SystemRootSystem32notepad.exe"
$minerDest = "$env:LOCALAPPDATAMicrosoftWindowsApplicationsmsedge.exe"
Copy-Item -Path $minerSrc -Destination $minerDest -Force
Start-Process -FilePath $minerDest -WindowStyle Hidden
# -----------------------------------------------
Bereinigungsbefehle
# Entferne die bösartigen Kopien
Remove-Item -Path "$env:TEMPRuntimeBroker.exe" -Force -ErrorAction SilentlyContinue
Remove-Item -Path "$env:LOCALAPPDATAMicrosoftWindowsApplicationsmsedge.exe" -Force -ErrorAction SilentlyContinue