BadHTAB è un exploit basato su hardware e software che sfrutta una vulnerabilità nell’hypervisor (lv1) della PlayStation 3. Originariamente ideato da geohot per Linux, questo exploit permette di ottenere accesso completo a una piccola regione di memoria, che può poi essere utilizzata per manipolare l’hypervisor e ottenere il controllo totale del sistema.
Con il recente porting su GameOS, BadHTAB funziona ora su tutti i modelli di PS3 con PS3HEN, permettendo per la prima volta l’accesso all’hypervisor anche su console non-CFW (Custom Firmware). Ciò consente di sbloccare funzionalità tipiche delle CFW su console ufficiali.
Come Funziona BadHTAB?
L’exploit si basa su un glitch hardware: forzando un segnale di RAM a massa per un breve istante, è possibile saltare un’operazione di scrittura. Se ciò avviene mentre l’hypervisor sta invalidando una entry della HTAB (Hash Page Table), questa rimane valida, concedendoci permessi di lettura e scrittura su una specifica area di memoria. Questa zona può poi essere manipolata per ottenere l’accesso completo alla memoria.
Componenti Principali
-
BadHTAB – La parte software, rilasciata come file PKG eseguibile sulla PS3.
-
ps3pulldown2 – La parte hardware, basata su Raspberry Pi Pico (RP2040), che comunica con la PS3 via USB.
A differenza della versione Linux, GameOS ha una finestra di glitch molto più ristretta, rendendo necessaria l’automazione per ottenere un exploit stabile. Tuttavia, il tasso di successo rimane basso (5-10%), rendendolo adatto solo a utenti esperti e pazienti.
Requisiti e Avvertenze
-
Necessario il saldataggio: non è la parte più difficile, ma ottenere un avvio stabile dopo la modifica richiede abilità.
-
Non persistente: l’exploit deve essere rieseguito dopo ogni riavvio.
-
Supporta firmware 4.70 e successivi.
Funzionalità Sbloccate
Dopo un’esecuzione riuscita, sarà possibile:
-
hvcall 114 ovunque: mappare qualsiasi area di memoria senza restrizioni.
-
Nuove hvcalls:
-
lv1_peek(34)
: leggere memoria LV1. -
lv1_poke(35)
: scrivere in memoria LV1. -
lv1_exec(36)
: eseguire codice in LV1.
-
-
Dump della memoria LV1: salvare il contenuto della memoria hypervisor su file.
-
Caricare kernel LV2 personalizzati: avviare qualsiasi
lv2_kernel.fself
. -
Ripristinare OtherOS: avviare petitboot e utilizzare Linux su PS3.
Nota: Se si utilizza il boot di LV2/OtherOS, le nuove hvcalls verranno rimosse, ma hvcall 114
rimarrà attivo, permettendo di reinstallarle.
Installazione (Hardware)
Guide Necessarie
-
Collegamento Raspberry Pi Pico:
-
Collegare i pin RQ7 (GPIO15) e RQ8 (GPIO16) ai punti corretti sulla scheda madre PS3.
-
Abilitare UART nel SYSCON (varia a seconda del modello):
-
Mullion SYSCON (CXR713):
w 7202 02
-
Mullion SYSCON (CXR713120-203GB):
w 4202 02
-
Mullion SYSCON (CXR714):
w 4202 02
-
Sherwood SYSCON:
w 1202 02
-
-
Attenzione: Non abilitare output UART extra, altrimenti il glitch causerà crash al ritorno a XMB.
-
-
Monitoraggio PS3 (opzionale ma consigliato):
-
PS3 ribbon connector 3.3V → GPIO10
-
SB_TX (UART) → GPIO5
-
PSU Standby Pin 3 → GPIO18
-
HDD LED Anode → GPIO22 (opzionale)
-
-
LED di Stato sul Pico:
-
Rosso (Errore) → GPIO6
-
Giallo (Stato) → GPIO2
-
Verde (Successo) → GPIO21
-
Blu (Attività) → GPIO27
-
Installazione (Software)
-
Scaricare il file PKG di BadHTAB e installarlo sulla PS3.
-
Eseguire l’exploit:
-
Collegare il Pico alla PS3 via USB.
-
Avviare BadHTAB.
-
Triplo beep breve: exploit avviato.
-
Beep intermittenti: glitch in corso (LED Pico lampeggia).
-
Se il beep si interrompe o la PS3 si spegne: riavviare e riprovare (potrebbero servire ore).
-
Triplo beep ripetuto: glitch riuscito.
-
Beep lungo (5 secondi): exploit completato, ritorno a XMB.
-
Miglioramenti di esc0rtd3w
La versione modificata da esc0rtd3w introduce:
-
Riavvio automatico in caso di crash.
-
Monitoraggio UART per controllare il comportamento del Pico.
-
Gestione avanzata degli errori (evita di dover staccare la corrente manualmente).
-
4 LED di stato per un feedback visivo immediato.
Conclusioni
BadHTAB rappresenta una svolta per la scena homebrew della PS3, portando funzionalità solo-CFW anche su console non modificate. Sebbene complesso e con un basso tasso di successo, apre nuove possibilità per sviluppatori e utenti avanzati.
⚠️ Attenzione: Questo exploit richiede competenze tecniche e pazienza. Procedere con cautela per evitare danni alla console.
🔗 Scarica BadHTAB e ps3pulldown2:
https://github.com/esc0rtd3w/BadHTAB/releases
Hai provato BadHTAB? Condividi la tua esperienza nei commenti! 🚀