Il developer Flatz è riuscito ad estrarre la ROM AMD PSP dal kit desktop 4800s, che, come noto, condivide la stessa APU utilizzata dalla console Xbox Series X (Arden, Sparkman).
Successivamente, Flatz ha iniziato ad esplorare la ROM, ma ha incontrato alcune difficoltà nell’exploit, pur riuscendo ad ottenere l’esecuzione del codice PSP una settimana fa. Tuttavia, è rimasto bloccato perché l’interfaccia UART era inattiva.
I've just dumped AMD PSP ROM from 4800s Desktop Kit which shares the same APU as used in Xbox Series X (Arden, Sparkman). Now it's a time to explore. 🙂 pic.twitter.com/JB8jqNcZ8u
— Aleksei Kulaev (@flat_z) February 28, 2024
Flatz ha ipotizzato che fosse un problema con il bootloader PSP che non configurava correttamente il chip SuperIO, e sembrava essere corretto.
Sul 4800s è stato utilizzato il chip Nuvoton contrassegnato come 5565D-M come multi-controller, ma non c’era un datasheet disponibile e il suo pinout era molto diverso da tutti i datasheet pubblici di chip simili trovati.
Fortunatamente, dopo aver esaminato molte immagini su Internet, ha trovato una scheda madre per PC di MSI che utilizzava lo stesso chip SuperIO e ha trovato il boardview, così ha potuto capire tutti i suoi pin.
Tuttavia, aveva ancora bisogno del datasheet per risolvere il problema UART. Dopo una settimana di tentativi, attacchi a forza bruta, reflash del BIOS (dove ha inserito il suo payload PSP) e osservazione del bus LPC utilizzando un analizzatore logico, Flatz è riuscito a trovare una combinazione di registri/biti che dovevano essere attivati per attivare l’UART.
Alla fine, ha ottenuto primitive di lettura/scrittura/chiamata funzionanti tramite il server UART dal suo payload PSP che funziona in modalità SVC.
Fonte: twitter.com