Frame4 è un progetto basato su PS4Debug che introduce una serie di funzionalità avanzate per il debugging e il controllo della PlayStation 4. Con supporto per firmware multipli e una vasta gamma di operazioni sia in userland che in kernel, Frame4 si propone come uno strumento versatile per sviluppatori e ricercatori.
Caratteristiche Principali
Frame4 offre numerose funzionalità avanzate, tra cui:
-
Gestione dei Processi e Moduli
-
Lista dei processi attivi (
Process List
) -
Lista dei moduli caricati (
Module List
) -
Mappa della memoria virtuale (sia in Kernel che in Userland)
-
-
Lettura e Scrittura della Memoria
-
Accesso in lettura/scrittura alla memoria virtuale (Kernel e Userland)
-
Lettura/scrittura della memoria fisica (solo in contesto Kernel)
-
-
Debugging e Funzioni Avanzate
-
Debugger per Userland
-
Chiamate di funzioni remote (RPC)
-
Server UART sulla porta 3321
-
Server HTTP sulla porta 2812
-
Possibilità di impostare la soglia di temperatura della ventola
-
Informazioni di sistema (PSID, versione FW/SDK, dettagli kernel, ecc.)
-
Notifiche di sistema
-
Caricamento di file ELF e SPRX
-
Patch Applicate
Frame4 include diverse patch per migliorare la stabilità e l’accessibilità:
-
Disabilitazione ASLR (Address Space Layout Randomization)
-
Montaggio di
/user
su qualsiasi processo -
Disabilitazione dei coredump
-
Rimozione dei controlli di firmware per i PKG (necessario ancora il backporting per
param.sfo
eelf/prx
) -
Fix per il kernel panic delle pagine da 2MB (sui firmware 9.00+)
-
Patch per il caricamento di ELF nel kernel (risolve
vm_fault_copy_wired: page missing
) -
Modifiche a
sceKernelVirtualQuery
per permettere query su pagine contrassegnate come sistema
Syscall Personalizzati
Frame4 installa i seguenti syscall personalizzati:
-
107
sys_proc_list -
108
sys_proc_rw -
109
sys_proc_cmd -
110
sys_kern_base -
111
sys_kern_rw -
112
sys_console_cmd -
115
sys_kern_cmd
Firmware Supportati
-
5.05
-
6.72
-
7.02
-
9.00 (consigliato per chi è su 6.72/7.02)
-
11.00 (supporto sperimentale, feedback ben accetti!)
Librerie Disponibili
-
C#
-
C++ (work in progress)
-
JavaScript
Obiettivi Futuri
Il team di sviluppo sta lavorando a:
-
Far coesistere Frame4 con PS4Debug senza conflitti
-
Cambiare i syscall usati (107-112) per evitare interferenze
-
Unificare il sistema di compilazione (simile a quanto fatto da Dizz per PS5Debug)
-
Implementare il caricamento di SPRX senza dipendere da GoldHEN
-
Migliorare lo scanner on-console
-
Creare un processo dedicato invece di “hijackare” ShellCore
-
Spostare più funzionalità in userland quando non servono in kernel
Novità nella Release 0.3.2
-
Lista dei moduli (
Module List
) -
Informazioni estese sulla console (PSID, SDK, versione FW, ecc.)
-
Gestione avanzata dei processi (resume/stop/kill)
-
Scanner AOB (Array Of Bytes) di base
-
Hook per Fatal Trap e Backtrace
-
Patch per i coredump su tutti i firmware (evita schermate blu nei crash)
-
Fix per
sys_virtual_query
(permette di interrogare pagine di sistema) -
Mappa della memoria kernel (
Kernel VM Map
) -
Lettura della memoria fisica dal kernel
Nota:
La funzionalità AFR è stata temporaneamente rimossa per problemi di implementazione. Potrebbe essere reintrodotta in futuro.
🔗 Download e Maggiori Info:
https://github.com/DeathRGH/frame4/releases
Frame4 rappresenta un passo avanti nel mondo del debugging per PS4, offrendo strumenti potenti e flessibili per sviluppatori e appassionati. Provatelo e contribuite con il vostro feedback!