Annunciato un primo aggiornamento per Collateral Damage, il kernel exploit per il sistema operativo delle console Xbox, noto come Xbox SystemOS.
L’aggiornamento include un payload di rete sviluppato da tuxuser e @landaire, che consente di caricare lo script iniziale senza adv file explorer, è possibile utilizzare un simulatore HID come un Rubber Ducky o un Flipper Zero per eseguire l’exploit.
i packaged in the release the plain script as well as a version already in rubber ducky format! was able to use this to exploit my last remaining console which didnt have adv installed, worked perfectly first try! pic.twitter.com/iCFRR99veL
— emma (@carrot_c4k3) July 18, 2024
Nella release sono inclusi sia lo script semplice sia una versione già in formato Rubber Ducky, che è stata testata con successo su una console senza adv installato.
Precisazione importante
Questo NON è un “jailbreak”. SystemOS è la macchina virtuale su cui girano le applicazioni, ed è l’ambiente su cui si ottiene il controllo quando si attiva la modalità dev sulla console.
Questo exploit consentirà il pieno controllo su questa macchina virtuale e l’esecuzione di homebrew sulle console retail senza modalità dev. NON consentirà la pirateria.
I payload del primo stage, il PE loader e il network loader sono forniti da Solstice. Questo exploit è stato sviluppato da Emma Kirkpatrick (scoperta e sfruttamento della vulnerabilità) e Lander Brandt (Solstice).
Avvertenze
Per posizionare il payload localmente sulla console Xbox, si consiglia di utilizzare un esploratore full-trust come Adv File Explorer (FullTrust).
In alternativa, il payload iniziale può essere servito tramite un simulatore di tastiera USB (come rubber ducky) e le fasi successive del payload possono essere caricate tramite rete.
L’esempio di reverse shell fornito qui richiede che la console sia connessa a una rete. Quando si collega la console a una rete, refa molta attenzione a evitare di connetterti a Internet e aggiornare.
Cercare di bloccare il più possibile la connettività a Xbox LIVE, almeno impostando il DNS su server non validi.
Questo exploit non è completamente affidabile. Si basa su un side channel della CPU e su una race condition, entrambi con il potenziale di fallire. In caso di fallimento, l’exploit può avvisarti che ha fallito tramite output di rete, oppure la console stessa può bloccarsi e riavviarsi.
Istruzioni per l’uso
- Modificare la riga 7 del file
gamescript_autosave.txt
ogamescript_autosave.txt
con l’indirizzo IP locale del PC.- Per l’uso con l’app Full-Trust File Explorer: Copiare
gamescript_autosave.txt
,stage2.bin
erun.exe
nella directoryLocalState
dell’applicazione Game Script sulla console (Q:\Users\UserMgr0\AppData\Local\Packages\27878ConstantineTarasenko.458004FD2C47C_c8b3w9r5va522\LocalState
). - Per l’input del simulatore HID/tastiera: Digitare il contenuto di
gamescript_autosave_network.txt
nella finestra GameScript. Servirestage2.bin
erun.exe
tramitepayload_server_win_x64.exe --stage2 stage2.bin --run run.exe
.
- Per l’uso con l’app Full-Trust File Explorer: Copiare
- Ascoltare la porta
7070
sul PC utilizzando netcat o un tool simile (esempio di comando:nc64.exe -lvnp 7070
). - Aprire l’applicazione Game Script sulla console e selezionare “Show Code Run window” e cliccare su “Run code once”.
- Se l’exploit ha successo, dovreste vedere un output sul PC simile al seguente:
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:\>
Sperimentazione
È necessario un lavoro aggiuntivo per rendere questo exploit uno strumento user-friendly per caricare homebrew sulla Xbox, ma questo fornisce un buon punto di partenza.
Se si desidera sperimentare l’esecuzione di codice come SYSTEM, è possibile inserire il proprio codice nella funzione post_exploit
in post_exploit.c
.
Lavori futuri
C’è ancora molto lavoro da fare, ma poiché la parte del kernel è completata, si è deciso di condividere il lavoro con la comunità per consentire agli sviluppatori di iniziare a sperimentare con i privilegi di SYSTEM.
Ecco alcune delle funzionalità che si spera di aggiungere in futuro:
- Supporto per il caricamento laterale.
- Avvio di processi non firmati non-UWP.
- Supporto SSH.
- Ulteriori idee sono benvenute.
Download: Collateral Damage v1
Download: Collateral Damage v1 Remote
Download: Source code Collateral Damage v1
Fonte: twitter.com
se aggiungessero il modo di impostare le risoluzioni 50hz per l’emulazione di sistemi come C64, Amiga, PSX e PS2 sarebbe fantastico .