STOCKSTAY Noch ein Tag: Der neueste Zuwachs zum Nachrichtendienstlichen Apparat von Turla
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Das Google Threat Intelligence Group identifizierte STOCKSTAY, ein mehrkomponentiges .NET Backdoor, das von der mit Russland in Verbindung stehenden Bedrohungsakteurengruppe Turla genutzt wird. Die Malware ist modular aufgebaut und umfasst einen Tunnel, einen Orchestrator und eine Backdoor-Komponente, die alle über sichere WebSockets kommunizieren. Sie ist dazu gedacht, langfristige Cyber-Spionage-Operationen gegen Regierungs- und Militärziele zu unterstützen.
Untersuchung
GTIG führte eine eingehende Analyse des STOCKSTAY-Ökosystems durch und verfolgte seine Entwicklung bis Dezember 2022 zurück. Forscher kartierten seine modularen Komponenten, untersuchten seine Verwendung der Umgebungsdaten für die Entschlüsselung von Konfigurationsdaten und dokumentierten seine Tarnung von einem Börsenmarkt-Dienstprogramm hin zu anderen harmlosen Anwendungen. Die Untersuchung zeigte auch die Nutzung von K1MORPHER zur Zeichenverschleierung und Verbindungen zu Turlas bekanntem KAZUAR-Toolkit.
Abwehrmaßnahmen
Organisationen sollten eine starke Überwachung auf verdächtiges Verhalten von .NET-Anwendungen und ungewöhnlichen WebSocket-Verkehr zu unbekannten Domains einführen. Die Abwehr gegen den Erstzugriff durch bösartige RDP-Dateien und die Verstärkung des E-Mail-Schutzes gegen Phishing sind ebenfalls kritisch. Zudem kann das Schließen von Sicherheitslücken wie CVE-2025-8088 in WinRAR helfen, ausnutzungsbasierte Bereitstellungen zu blockieren.
Reaktion
Wenn STOCKSTAY-Aktivität festgestellt wird, isolieren Sie sofort die betroffenen Hosts, um weitere Kommando- und Kontrollkommunikation sowie seitliche Bewegungen zu stoppen. Führen Sie eine detaillierte forensische Untersuchung durch, um den gesamten Umfang der Kompromittierung festzustellen, wobei der Fokus auf unautorisierten Änderungen in der Registrierung und neu erstellten geplanten Aufgaben liegt. Netzwerkprotokolle sollten auch auf lang andauernde WebSocket-Sitzungen überprüft werden, und Systeme sollten auf das Vorhandensein von STOCKSTAY-Komponenten überprüft werden.
"flowchart TD step_initial_access["Erstzugriff: T1566 – Phishing (Spearphishing-Anhänge wie RDP-Dateien, MSI oder RAR; Spearphishing-Links zu kompromittierten Seiten)"] step_execution["Ausführung: T1204.002 – Benutzerausführung: Bösartige Datei (HTA-Dateien, RDP-Konfigurationen); T1574.014 – Ausführungsflussumleitung: AppDomainManager (.NET-Nutzlasten); T1543 – Erstellen oder Ändern eines Systemprozesses"] rules_for_execution("<b>Regelname</b>: Verdächtiges LOLBAS MSHTA Ausweichverhalten bei Erkennung von zugehörigen Befehlen (via process_creation)<br/><b>Regel-ID</b>: feb459cf-289a-41ab-9241-d8edc232c487") step_persistence["Persistenz: T1543 – Erstellen oder Ändern eines Systemprozesses (Autostarteinträge); T1133 – Externe Remote-Dienste (langfristige Konnektivität)"] step_defense_evasion["Verteidigungsausweichen: T1036 – Tarnung (Umbenennung zu harmlosen Dienstprogrammen); T1027.015 – Verschleierte Dateien oder Informationen: Kompression; T1497.001/002 – Virtualisierung/Sandbox-Ausweichen via WMI"] step_discovery["Entdeckung: T1012 – Abfrage der Registrierung; T1497.001 – Virtualisierung/Sandbox-Ausweichen (System-/Hardware-Informationssammlung via WMI)"] step_command_and_control["Kommando und Kontrolle: T1102.002/003 – Web Service: Bidirektionale/Einweg-Kommunikation (WebSocket via Render); T1568 – Dynamische Auflösung"] rules_for_c2("<b>Regelname</b>: Möglicher Missbrauch des Publicnode Ethereum als C2-Kanal (via dns_query)<br/><b>Regel-ID</b>: 280e86bf-fad9-4b9c-8867-e2355e3f50ba") step_collection_exfiltration["Sammlung und Exfiltration: T1560.002/003 – Archivierung gesammelter Daten über Bibliothek oder benutzerdefinierte Methode (In-Memory-ZIP-Archive)"] step_initial_access –>|leads_to| step_execution step_execution –>|enables| step_persistence step_execution -.->|detected_by| rules_for_execution step_persistence –>|leads_to| step_defense_evasion step_defense_evasion –>|enables| step_discovery step_discovery –>|leads_to| step_command_and_control step_command_and_control –>|enables| step_collection_exfiltration step_command_and_control -.->|detected_by| rules_for_c2 "
Angriffsfluss
Erkennungen
Möglicher Missbrauch des Publicnode Ethereum als C2-Kanal (via dns_query)
Ansicht
Verdächtiges LOLBAS MSHTA Ausweichverhalten bei Erkennung von zugehörigen Befehlen (via process_creation)
Ansicht
Erkennung von CryptoContainer Parsing und K1MORPHER-Obfuskation in Turla’s STOCKSTAY-Malware [Windows Sysmon]
Ansicht
Erkennung der STOCKSTAY WebSocket C2-Kommunikation [Windows Netzwerkverbindung]
Ansicht
Erkennung von STOCKSTAY-Bösartigen Aktivitäten [Windows Prozesserstellung]
Ansicht
Simulation der Ausführung
Voraussetzung: Das Telemetrie- & Baseline-Pre-Flight-Check muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der Angreifertechnik (TTP), die die Erkennungsregel auslösen soll. Die Befehle und der Bericht MÜSSEN die identifizierten TTPs direkt reflektieren und darauf abzielen, genau die Telemetrie zu generieren, die von der Erkennungslogik erwartet wird. Abstrakte oder nicht verwandte Beispiele führen zu Fehldiagnosen.
-
Angriffserzählung & Befehle: Der Angreifer versucht, Persistenz zu etablieren, indem er ein Tool verwendet, das als legitime Microsoft-Update-Komponente getarnt ist. Um einer Erkennung zu entgehen, hat der Angreifer seine STOCKSTAY-Backdoor umbenannt zu
MicrosoftUpdateOneDrive.exeund in einem temporären Verzeichnis platziert. Ziel ist es, diesen Prozess auszuführen, um eine Rückverbindung (Reverse Shell) oder Kommando- und Kontrollkommunikation (C2) zu initiieren, wobei auf den „legitimen“ Namen vertraut wird, um grundlegende Prozessüberwachung zu umgehen. -
Regressionstest-Skript:
# Simulationsskript: STOCKSTAY-Tarnungsausführung $MaliciousName = "MicrosoftUpdateOneDrive.exe" $TargetDir = "$env:TEMPStockstaySim" # 1. Erstellen Sie ein simuliertes „bösartiges“ Verzeichnis und Datei if (!(Test-Path $TargetDir)) { New-Item -Path $TargetDir -ItemType Directory -Force } $FakeBinary = Join-Path $TargetDir $MaliciousName # 2. Erstellen Sie eine Dummy-Ausführungsdatei (Verwendung einer umbenannten cmd.exe zu Simulationszwecken) Copy-Item "C:WindowsSystem32cmd.exe" -Destination $FakeBinary -Force Write-Host "[+] Simulation: Created $FakeBinary" -ForegroundColor Cyan # 3. Führen Sie den „bösartigen“ Prozess aus Write-Host "[+] Simulation: Executing $MaliciousName..." -ForegroundColor Yellow Start-Process -FilePath $FakeBinary -ArgumentList "/c echo STOCKSTAY_SIMULATION_ACTIVE" -WindowStyle Hidden Write-Host "[+] Simulation: Process execution triggered." -ForegroundColor Green -
Bereinigungsbefehle:
# Bereinigungsskript $TargetDir = "$env:TEMPStockstaySim" if (Test-Path $TargetDir) { Remove-Item -Path $TargetDir -Recurse -Force Write-Host "[+] Cleanup: Removed simulation directory $TargetDir" -ForegroundColor Green } else { Write-Host "[-] Cleanup: Simulation directory not found." -ForegroundColor Red }