Home Homebrew Pubblicato un nuovo aggiornamento per l’exploit pOOBs4 sul firmware 9.00 della...

[Scena PS4] Pubblicato un nuovo aggiornamento per l’exploit pOOBs4 sul firmware 9.00 della console PlayStation 4

3922
10

Il developer ChendoChap aggiorna l’exploit pOOBs4, anche se ancora non completamente testato, il jailbreak potrebbe andare in Panic (questo significa che l’exploit potrebbe fallire, ma che nessun danno verrà arrecato alla console).

20211213105637

L’aggiornamento disabilita totalmente la patch sysVeri, utilizzato in precedenza per ritardare e disabilitare il kernel panic (l’errore fatale), reso inoltre ancora più piccolo il file exfathax.img.

Lo sviluppatore non ha un proprio account Twitter, pertanto gli aggiornamenti vengono segnalati sporadicamente da Al Azif, è comunque possibile seguire gli eventuali aggiornamenti sul canale Discord di SCE PARTY.

Questa deve essere intesa come una versione beta, pertanto vengono forniti due file IMG, la vecchia versione exfathax.img e la nuova exfathax_pico.img molto più piccola.

In questo progetto è possibile trovare una nuova implementazione che cerca di sfruttare un bug del filesystem presente sul firmware 9.00 della console PlayStation 4 trovato durante il diffing dei kernel 9.00 e 9.03.

[stextbox id=’info’]Nota: Il bug è antecedente al firmware 1.00, questo significa che tutti i firmware compresi tra la versione 1.00 e 9.00 dovrebbero essere sfruttabili utilizzando la stessa strategia (avrai comunque bisogno di un diverso exploit e gadget dell’area utente).[/stextbox]

Per eseguire il jailbreak, non dovremo fare altro che visitare la pagina web biteyourconsole.net/pOOBs4/ dal browser web della console PlayStation 4 e collegare il dispositivo USB formattato in exFAT contenente l’immagine exfathax.img.

Dopo la sua attivazione, l’exploit ci permetterà di eseguire codice arbitrario come kernel, per consentire il jailbreak e le modifiche a livello di kernel al sistema.

Il programma di avvio del payload viene eseguito come di consueto sulla porta 9020. Nota a margine, l’exploit non funziona sull’ultimo firmware 9.03.

Patch incluse

Le seguenti patch vengono applicate al kernel:

  • Consente la mappatura della memoria RWX (read-write-execute) (mmap / mprotect).
  • Istruzioni syscall consentite ovunque.
  • Risoluzione dinamica (sys_dynlib_dlsym) consentita da qualsiasi processo.
  • Chiamata di sistema personalizzata #11 (kexec()) per eseguire codice arbitrario in modalità kernel.
  • Consenti agli utenti senza privilegi di chiamare setuid(0) correttamente. Funziona come controllo dello stato, funge anche da escalation di privilegi.
  • (sys_dynlib_load_prx) patch.
  • Disabilitato sysVeri.

Utilizzo

Questo exploit è diverso da quelli precedenti in cui erano basati esclusivamente sul software. L’attivazione della vulnerabilità richiede il collegamento di un dispositivo USB appositamente formattato al momento giusto.

All’interno della repository è possibile trovare un file .img. L’immagine può essere scritta su di un dispositivo USB utilizzando uno dei tanti programmi disponibili, come ad esempio Win32DiskImager.

[stextbox id=’info’]Nota: Questo cancellerà l’unità USB, assicurati di selezionare l’unità corretta e di essere d’accordo prima di farlo.[/stextbox]

Quando viene eseguito l’exploit sulla console, attendere fino a quando non viene visualizzato un avviso con “Insert USB now. do not close the dialog until notification pops, remove usb after closing it.”.

Come indicato nella finestra di dialogo, inserire l’unità USB e attendere fino a quando non viene visualizzata la notifica “disk format not supported”, quindi chiudere l’avviso con “OK”.

L’esecuzione dell’exploit potrebbe richiedere un minuto e l’animazione rotante sulla pagina potrebbe bloccarsi: va bene così lascia che continui fino a quando non viene visualizzato un errore o ha esito positivo e viene visualizzato il messaggio “Awaiting payload”.

Note

  • Scollegare l’unità USB prima di un ciclo di (ri)avvio rischia di danneggiare l’heap del kernel all’avvio.
  • Il browser potrebbe indurti a chiudere la pagina prematuramente, non farlo.
  • Il cerchio di caricamento potrebbe bloccarsi durante l’attivazione dell’exploit del webkit, questo non significa ancora che l’exploit non sia riuscito.
  • Il bug è antecedente al firmware 1.00, questo significa che tutti i firmware compresi tra la versione 1.00 e 9.00 dovrebbero essere sfruttabili utilizzando la stessa strategia (avrai comunque bisogno di un diverso exploit e gadget dell’area utente).
  • È possibile sostituire il loader con un payload specifico per caricare le cose direttamente invece di farlo tramite i socket.
  • Questo bug funziona su alcuni firmware PS5, tuttavia al momento non esiste una strategia nota per sfruttarlo. L’utilizzo di questo bug contro i non vedenti di PS5 non sarebbe consigliato.
  • Per favore, non aprire questioni per dirmi che non ce ne sono… né fare tentativi per farmi fare i compiti per te.
  • Questa repository non fornisce nient’altro oltre alle patch iniziali del kernel che consentono di eseguire i payload. Se riscontri problemi con determinati payload, dovresti segnalare i tuoi problemi agli sviluppatori di quei payload attraverso qualsiasi mezzo ti mettano a disposizione.
  • Il nome della repository è una fusione delle parole “ps4” e “OOB“, essendo quest’ultima il tipo di vulnerabilità che questa implementazione tenta di sfruttare, qualsiasi altra interpretazione è puramente casuale e non intenzionale.
  • Come affermato in precedenza, questo bug è stato trovato differenziando i kernel 9.00 e 9.03, ciò implica che il bug è stato corretto su firmware 9.03.

Iniezione payload

Dopo aver attivato l’exploit andremo ad iniettare correttamente i payload desiderati, per farlo non dovrete fare altro che scaricare l’applicazione Netcat GUI e inviare prima il caricatore Mira alla porta 9020, quindi il payload desiderato alla porta 9021.

Dumpare un gioco da disco Blu-ray/PSN

  • Scaricare ed estrarre l’archivio payloads (3.50.9.00).zip.
  • Creare un file di testo e rinominarlo in dumper.cfg (eventualmente è possibile scaricarlo da qui), caricare il file in un dispositivo USB con file system exFAT, utilizzato per effettuare i dump dei giochi.
    • Digitare split = 0 per eseguire il dump nella cartella CUSAxxxxx senza dividere i file app e patch.
    • Digitare split = 1 per eseguire il dump della sola app nella cartella CUSAxxxxx-app.
    • Digitare split = 2 per eseguire il dump della sola patch nella cartella CUSAxxxxx-patch.
    • Digitare split = 3 per eseguire il dump e splittare entrambi app e patch all’interno di diverse cartelle.
    • Si può scegliere di impostare anche un diverso intervallo di tempo prima di visualizzare le notifiche (di default 60, digitare 0 per disattivare le notifiche).
    • Digitare shutdown = 0 per spegnere la console dopo aver terminato il dump del gioco, shutdown = 1 invece per proseguire la sessione anche dopo aver eseguito il dump.
  • Eseguire l’exploit e iniettate il payload app-dumper.bin.
  • Inserire il disco Blu-ray che si intende dumpare nel lettore (in alternativa eseguire il titolo PSN se in formato digitale), potrete anche installare gli aggiornamenti di gioco, verranno dumpati insieme al gioco.
  • Ridurre il browser web ad icona (pulsante PS), ma non chiuderlo.
  • Eseguire il gioco che si desidera dumpare e arrivare almeno al menu di gioco, successivamente riducetelo ad icona (pulsante PS).
  • Aspettare fino al completamento. Quando il processo di dump sarà finito, le luci smetteranno di lampeggiare e la console si spegnerà automaticamente (se settato nel file dumper.cfg).
  • Ora riaccendete la console, rimuovete il disco e provare a disinstallare il gioco (per ulteriori test).
  • Scollegare il dispositivo USB dalla console e collegarlo al PC, successivamente eseguire lo strumento gengp4.exe (questa app dovrete procurarvela da soli non possiamo collegarla qui), cliccare su File > Open, e selezionare la directory CUSAxxxxx-APP, fare clic su Generate .GP4, dovreste ottenere ‘Done’, quindi cliccare Save .GP4.
  • Sempre da gengp4.exe selezionare la directory CUSAxxxxx-PATCH, fare clic su Generate .GP4, dovreste ottenere ‘Done’, quindi cliccare Save .GP4.
  • Eseguire il programma orbis-pub-gen.exe (questa app dovrete procurarvela da soli non possiamo collegarla qui), selezionare la cartella CUSAXXXXX-APP.GP4 e cliccare il tastino Build con la freccia rossa capovolta nel lato superiore. Una volta terminata la procedura chiudere il programma.
  • Sempre dal programma orbis-pub-gen.exe, selezionare la cartella CUSAXXXXX-PATCH.GP4 e cliccare il tastino Build con la freccia rossa capovolta nel lato superiore. Una volta terminata la procedura chiudere il programma.
  • Ora è possibile eliminare le cartelle CUSAXXXXX-APP e CUSAXXXXX-PATCH.
  • Aprire il file .gp4 nel fileorbis-pub-gen.exe e creare il file .pkg.

Changelog

  • Uccidi sysVeri ancora di più e non lasciare testimoni.
  • Corretto un bug che in qualche modo non stava rompendo nulla?
  • Corretto un bug di rop relativo all’allineamento dello stack sys-v.
  • Fornite più funzioni di supporto krop.
  • Fornito un img più piccolo (0x1800 byte, anche molto comprimibile). vedi [#29] [#31]
  • Aggiunto wk expl controllo di integrità.
  • Assicura che le pagine a cui accede il kernel siano bloccate.
  • Cerca di ridurre il tempo speso con gli interrupt disabilitati.

[stextbox id=’info’]Nota: Non sono stati ancora eseguiti test approfonditi. potrebbe essere peggio, quindi panic a proprio rischio![/stextbox]

Host exploit 9.00: biteyourconsole.net/pOOBs4/

Download: Payload GoldHEN (firmware 9.00)

Download: pOOBs4 (exfathax_pico.img) [aggiornato]

Download: pOOBs4 (exfathax.img)

Download: Source code pOOBs4

Fonte: twitter.com