RoguePlanet nutzt eine Windows Zero-Day-Lücke über die Defender-Quarantäne-Pipeline
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
RoguePlanet ist eine Local-Privilege-Escalation-Zero-Day-Schwachstelle, die den Microsoft Defender Quarantäne- und Wiederherstellungsworkflow unter Windows ausnutzt. Durch die Kombination von NTFS-Verzeichnisverknüpfungen, opportunistischen Sperren und dem Volumenschattenkopie-Dienst kann ein Benutzer mit niedrigen Rechten in den Verarbeitungsprozess des Defenders eingreifen und beliebigen Code als NT-AUTORITÄTSYSTEMausführen. Der Exploit verlässt sich auf eine deterministische Methode zur I/O-Sättigung, um Timing-Rennen während der Dateiquarantäne-Operationen konsistent zu gewinnen.
Untersuchung
Das Howler Cell Threat Research Team reproduzierte den Exploit auf einem vollständig gepatchten Windows 11 Pro System und bestätigte, dass er SYSTEM-Level Code-Ausführung ohne Speicherbeschädigung oder Administratorzugang erreicht. Ihre Analyse identifizierte eine siebenstufige Angriffskette, die ein eingebettetes ISO-Image, NTFS-Reparaturpunkte und die Ausnutzung der WER QueueReporting Geplanten Aufgabe umfasst. Die Forscher stellten auch fest, dass kleine Quellcode-Änderungen es dem Exploit ermöglichen, die statische Erkennung relativ leicht zu umgehen.
Minderung
Derzeit gibt es keinen offiziellen Patch, der die Grundursache von RoguePlanet adressiert. Verteidiger sollten die Erstellung der spezifischen benannten Pipes im Zusammenhang mit dem Exploit überwachen und ungewöhnliche Dateisystemaktivitäten mit UUID-ähnlichen Verzeichnisnamen unter %TEMP%überwachen. Zusätzliche Härtung sollte sich darauf konzentrieren, den Missbrauch von NTFS-Verknüpfungen zu begrenzen und Nicht-System-Prozesse zu erkennen, die Volumenschattenkopien auflisten.
Reaktion
Falls Aktivitäten im Zusammenhang mit RoguePlanet erkannt werden, sollten Sicherheitsteams den betroffenen Host isolieren und alle Prozesse untersuchen, die conhost.exe von SYSTEM-Integritäts-Elternprozessen in Benutzersitzungen starten. Analysten sollten auch nach wermgr.exe suchen, das aus unerwarteten Pfaden läuft, und nach %TEMP% der RP_ Verzeichnisstruktur ansehen. Auch die Überprüfung von Aufgabenplanungsprotokollen auf verdächtige Ausführungen der QueueReporting Aufgabe ist ebenfalls erforderlich.
graph TB %% Class Definitions Section classDef action fill:#99ccff classDef tool fill:#cccccc classDef process fill:#ccffcc classDef malware fill:#ff9999 classDef technique fill:#e1ccff %% Node Definitions %% Step 1: Preparation prep_iso[„<b>Action</b>: Extract embedded ISO<br/><b>Description</b>: Orchestrator extracts ISO to create a read-only virtual disk<br/><b>Target</b>: %TEMP% directory structure“] class prep_iso action %% Step 2: Payload Delivery payload_ads[„<b>Action</b> – <b id=’T1564.004’>NTFS File Attributes: Alternate Data Streams</b><br/><b>Description</b>: Writing EICAR test file into a hidden ADS named :WDFOO<br/><b>Purpose</b>: Bypass standard file restrictions during delivery“] class payload_ads technique %% Step 3: Race Condition race_condition[„<b>Action</b> – <b id=’T1499’>Endpoint Denial of Service: Impair Defenses</b><br/><b>Description</b>: Using Poseidon I/O subsystem to create high-frequency disk activity<br/><b>Mechanism</b>: I/O saturation and opportunistic locks (oplocks) to pause Defender“] class race_condition technique %% Step 4: Execution Flow Hijacking hijack_junction[„<b>Action</b> – <b id=’T1137’>Office Application: Create or Modify Registry/Files</b><br/><b>Description</b>: Performing junction swaps using NTFS reparse points<br/><b>Target</b>: Redirecting legitimate wermgr.exe path to attacker directory“] class hijack_junction technique overwrite_artifact[„<b>Action</b>: Overwrite SYSTEM-owned artifact<br/><b>Description</b>: Replacing quarantine artifact with malicious payload while maintaining SYSTEM metadata“] class overwrite_artifact action %% Step 5: Privilege Escalation task_trigger[„<b>Action</b> – <b id=’T1053.005’>Scheduled Task/Job: Scheduled Task</b><br/><b>Description</b>: Leveraging Task Scheduler COM interface to trigger QueueReporting task“] class task_trigger technique shell_escalation[„<b>Process</b>: conhost.exe shell<br/><b>Privilege Level</b>: NT AUTHORITYSYSTEM<br/><b>Description</b>: Final execution of redirected payload via hijacked task“] class shell_escalation process %% Connections %% Flow from preparation to payload prep_iso –>|facilitates| payload_ads %% Flow from payload to race condition payload_ads –>|triggers| race_condition %% Flow from race condition to hijacking race_condition –>|enables| hijack_junction %% Flow from hijacking to overwrite hijack_junction –>|results_in| overwrite_artifact %% Flow from overwrite to task trigger overwrite_artifact –>|prepares_for| task_trigger %% Flow from task trigger to final shell task_trigger –>|executes| shell_escalation
Angriffsfluss
Erkennungen
Verdächtiger Prozess unter NT-AUTORITÄT (via Prozess-Erstellung)
Ansicht
VHDMP-Optik-Disk-Image wurde montiert (via VHDMP)
Ansicht
Mögliches RoguePlanet-Exploitation-Verhalten (via Datei-Ereignis)
Ansicht
Mögliches RoguePlanet-Exploitation-Verhalten (via Pipe-Erstellung)
Ansicht
Anormaler NtQueryDirectoryObject-Zugriff auf Schattenkopien [Windows Sysmon]
Ansicht
Erkenne RoguePlanet-Exploit-Artefakte und Verhaltensmuster [Windows Datei-Ereignis]
Ansicht
RoguePlanet benannte Pipe und SYSTEM-Integritäts-Prozess-Anomalie [Windows Prozess-Erstellung]
Ansicht
Simulationsausführung
Voraussetzung: Der Telemetrie- und Basislinientest muss bestanden werden.
Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Adversary-Technik (TTP), die darauf ausgelegt ist, die Erkennungsregel auszulösen. Die Befehle und die Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genaue Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird. Abstrakte oder nicht zusammenhängende Beispiele führen zu Fehldiagnosen.
-
Angriffsnarrativ & Befehle: Der Angreifer nutzt eine Schwachstelle in einem laufenden Windows-Dienst aus, um SYSTEM-Level Code-Ausführung zu erreichen. Um die Kommunikation zwischen dem auszunutzenden Dienst und dem neu injizierten Thread zu erleichtern, erstellt der Angreifer eine benannte Pipe namens
.pipeRoguePlanet. Nach der erfolgreichen Erhöhung erzwingt die Nutzlast des Angreifers, dassservices.exezu erzeugenconhost.exeum eine interaktive Umgebung für die weitere Befehlsausführung bereitzustellen. Diese Sequenz ist darauf ausgelegt, das Verhalten der RoguePlanet-Exploit-Kette nachzuahmen. -
Regression-Test-Skript:
# Simulation of RoguePlanet Named Pipe and Process Anomaly # HINWEIS: Dieses Skript erfordert Administratorrechte, um service-ähnliches Verhalten zu simulieren Write-Host "[+] Starte RoguePlanet-Simulation..." -ForegroundColor Cyan # 1. Simulieren der Named Pipe-Erstellung (entspricht selection_pipe) # Wir verwenden PowerShell, um eine benannte Pipe zu erstellen, die den Zielindikator nachahmt $pipeName = "RoguePlanet" $pipe = New-Object System.IO.Pipes.NamedPipeServerStream($pipeName, [System.IO.Pipes.PipeDirection]::InOut) Write-Host "[+] Named Pipe \.pipe$pipeName erstellt." -ForegroundColor Green # 2. Simulation von anomaler Prozess-Erzeugung (entspricht selection_conhost und selection_parent) # In einem echten Exploit würde services.exe der Elternprozess sein. # Da wir nicht einfach 'zu services.exe werden' können, ohne einen Kernel-Exploit, # simulieren wir die Telemetrie, indem wir ein Prozess-Erstellungsereignis auslösen, # das die spezifische Eltern-Kind-Beziehung nachahmt, die von der Regel-Logik erwartet wird. Write-Host "[+] Simuliere conhost.exe, das von services.exe erzeugt wird..." -ForegroundColor Cyan # Wir verwenden einen Trick, um die Telemetrie zu imitieren: Ein Prozess zu erstellen, den das SIEM/Sysmon # mit dem Ziel-Elternprozess aufzeichnet, wenn wir uns in einem kontrollierten Lab-Umfeld befinden. # Für diesen Erkennungstest werden wir einen Befehl ausführen, der auf die spezifischen Bild/Elternbild-Kriterien abzielt. # Hinweis: In einer realen Validierung würde der Forscher ein Tool wie # 'ProcMon' oder einen benutzerdefinierten Treiber verwenden, um die Parent Process ID (PPID) # von services.exe zu fälschen, um sicherzustellen, dass die Regel genau auslöst. Start-Process "conhost.exe" -ArgumentList "/c echo Simulation Complete" -WindowStyle Hidden Write-Host "[+] Simulationsbefehle gesendet. Überprüfe SIEM auf Warnungen." -ForegroundColor Yellow # Halt der Pipe kurzzeitig, um sicherzustellen, dass die Telemetrie erfasst wird Start-Sleep -Seconds 5 $pipe.Dispose() -
Aufräumbefehle:
# Cleanup: Schließen aller verbleibenden Pipes und Beenden aller simulierten Prozesse Get-Process conhost | Stop-Process -Force -ErrorAction SilentlyContinue Write-Host "[+] Aufräumvorgang abgeschlossen." -ForegroundColor Green