Sono due attualmente gli articoli sull’exploit mast1c0re che il consulente e ricercatore per la sicurezza McCaulay Hudson ha riportato sul proprio blog, e dove viene descritto come eseguire giochi piratati della console PS2 su PS4 e PS5.
La catena di exploit inizia sfruttando un gioco PS2 per ottenere l’esecuzione del codice all’interno dell’emulatore, tramite un exploit nel salvataggio del gioco o tramite un exploit attivato esclusivamente dal controller.
mast1c0re: Part 2 – Arbitrary PS2 code execution.https://t.co/a7OKC5UAyS
— McCaulay (@_mccaulay) February 10, 2023
Si tratta di una vulerabilità assai nota che risalirebbe addirittura al 2021, riportata dal developer e hacker Cturt sulla piattaforma HackerOne, successivamente Sony concesse la sua divulgazione senza correggerlo.
Nell’articolo introduttivo vengono riassunti tutti i passaggi che seguiranno nelle varie parti (al momento sono stati pubblicati solo due articoli, pertanto due parti), vediamo quali:
Parte 1 – Modifica dei file di salvataggio del gioco PS2
Il passaggio iniziale nello sviluppo dell’exploit mast1c0re consiste nel creare un file di salvataggio per PlayStation 2 per il gioco Okage: Shadow King ed estrarre il file di dati contenente il nome del profilo.
Questo post del blog riguarda la creazione del file di salvataggio, l’estrazione del file .psu
dal file .ps2
, quindi lo sviluppo di uno strumento per estrarre i file dal file .psu
.
Prima parte disponibile a questo indirizzo.
Parte 2 – Esecuzione arbitraria del codice PS2
Il prossimo passo è modificare il nome del salvataggio del gioco per sfruttare un tradizionale overflow del buffer basato su stack all’interno del gioco Okage: Shadow King.
Ciò richiede la costruzione di due payload shellcode stager per eseguire un file di scheda di memoria che contiene un file eseguibile ELF PlayStation 2 compilato.
Seconda parte disponibile a questo indirizzo.
Parte 3 – Sfuggire all’emulatore
Il passaggio finale per ottenere l’esecuzione del codice userland su PlayStation 4 e PlayStation 5 prevede lo sfruttamento di una vulnerabilità di scrittura fuori limite all’interno dell’emulatore.
Questo ci consente di sovrascrivere un puntatore di funzione di lettura e di far trapelare .text
e gli indirizzi dello stack. Successivamente, possiamo quindi sovrascrivere un puntatore a funzione di scrittura per eseguire istruzioni .text
esistenti con un argomento passato al registro RSI.
Terza parte non ancora disponibile.
Il risultato
Eseguendo il codice PlayStation 4 e PlayStation 5 possiamo scaricare un file .ISO
PS2 dalla rete remota, montarlo nel filesystem utilizzando la funzionalità eboot.bin
esistente, quindi caricare il gioco utilizzando la funzione PS2 LoadExecPS2.
Fonte: wololo.net