Home Homebrew Rilasciato Frame4 v0.3.2 – un’estensione evoluta della libreria ps4debug

[Scena PS4] Rilasciato Frame4 v0.3.2 – un’estensione evoluta della libreria ps4debug

111
0

Il developer DeathRGH ha da poco rilasciato un nuovo aggiornamento di Frame4, un’estensione evoluta della libreria ps4debug, progettata per offrire strumenti avanzati di debug e manipolazione su console PlayStation 4 jailbroken.

Il software si rende compatibile con diverse versioni del firmware, tra cui 5.05, 6.72, 9.00 e 11.00, e consente operazioni tecniche come l’analisi dei moduli caricati, l’accesso a informazioni dettagliate sulla console (inclusi PSID, firmware e SDK), la gestione dei processi attivi e la scansione della memoria attraverso pattern di tipo AOB (Array of Bytes).

Frame4 permette di agganciare anche trappole per crash (fatal hook) e backtrace, rendendolo utile per lo studio di errori e malfunzionamenti.

Supporta inoltre la gestione dei coredump, le patch per i firmware compatibili e consente l’accesso alla memoria fisica e del kernel, incluse le mappe virtuali.

Funzionalità

  • Elenco dei processi.
  • Elenco dei moduli.
  • Mappa della memoria virtuale (sia del kernel che dello spazio utente).
  • Lettura/Scrittura della memoria (sia del kernel che dello spazio utente).
  • Lettura/Scrittura della memoria fisica (in contesto kernel).
  • Debugger (per lo spazio utente).
  • Chiamata di funzioni (RPC).
  • Server UART sulla porta 3321.
  • Server HTTP sulla porta 2812.
  • Impostazione della temperatura soglia della ventola.
  • Informazioni sulla console (PSID, versione SDK/UPD, info del kernel, ecc..).
  • Notifiche di sistema.
  • Caricamento di file ELF.
  • Caricamento di moduli SPRX.
  • (e altro ancora).

Patch

  • Disabilita ASLR.
  • Monta /user su qualsiasi processo.
  • Disabilita la creazione di coredump.
  • Rimuove i controlli del firmware per i file PKG (nota: param.sfo, elf/prx necessitano ancora del backporting).
  • Rimozione dello spam di I/O asincrono (blkno) su firmware 5.05.
  • Patch per il kernel panic causato da pagine da 2 MB (da firmware 9.00 in su).
  • Patch per il caricamento di file ELF nel kernel ("vm_fault_copy_wired: page missing").
  • Patch a VirtualQuery per permettere l’uso di sceKernelVirtualQuery su pagine contrassegnate come sistema.
  • (e altro ancora).

Syscall

Frame4 installa le seguenti syscall personalizzate:

  • 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 PS4 supportati

  • 5.05
  • 6.72
  • 7.02
  • 9.00
  • 11.00 (Nota: il supporto per 11.00 è appena stato testato; ogni feedback è utile!)
    Se ti trovi su 6.72 o 7.02, si consiglia di aggiornare a 9.00!

Librerie compatibili

  • C#
  • C++ (in lavorazione)
  • JavaScript

Obiettivi

  • Permettere a Frame4 di essere caricato insieme a ps4debug. Fatto!!
  • Sostituire le syscall (107-112) usate per i comandi, per evitare conflitti con ps4debug.
  • Abbandonare la compilazione multipla e unificare tutto (come già fatto da Dizz per ps5debug).
  • Implementare il caricamento di SPRX senza dipendere da GoldHEN.
  • Correggere lo scanner su console.
  • Evitare l’hijack di ShellCore e creare un proprio processo.
  • Spostare nello spazio utente tutte le funzionalità che non richiedono l’accesso al kernel.

Hook per trappole fatali

Aggiunge informazioni dettagliate alle trappole fatali e avviare un riavvio pulito. Esempio:

Fatal trap 12: page fault while in kernel mode
#
# registers:
#    rdi 0x880AE1DE0
#    rsi 0xFFFFFFFFADBB0000
#    rdx 0x1000
#    rcx 0x200
#    r8  0xFFFFFFFFD7049740
#    r9  0x92660BA0A
#    rax 0xFFFFFF806F71FA28
#    rbx 0xFFFFB8E8075F10B0
#    rbp 0xFFFFFF806F71F980
#    r10 0x880AE2DE0
#    r11 0xFFFFFF806F71FB80
#    r12 0x0
#    r13 0xFFFFFFFFD9524010
#    r14 0x8949C03148000041
#    r15 0xFFFFB8E807582DA0
#    rip 0xFFFFFFFFD70494D6
#    rsp 0x20
#
# kernelbase: 0xFFFFFFFFD6DD8000
#
# backtrace (0xFFFFFF806F71F970):
#    7 <kernelbase> + 0x7DE222
#    11 <kernelbase> + 0x274C010
#    13 <kernelbase> + 0xB7B72
#    16 <kernelbase> + 0x274C010
#    20 <kernelbase> + 0xB7A82
#    59 <kernelbase> + 0x2DF981
#    67 <kernelbase> + 0x274C010
#    71 <kernelbase> + 0x2DF338
#    79 <kernelbase> + 0x3F36E4
#    99 <kernelbase> + 0x274C010
#    103 <kernelbase> + 0x17D83A
#    108 <kernelbase> + 0x271740
#    116 <kernelbase> + 0x274C010
#    122 <kernelbase> + 0x2714BD
#    123 <kernelbase> + 0x2714D6
#    125 <kernelbase> + 0x2714DE
#

Hook per il backtrace

Aggiungere dettagli ai log di crash, evitando il calcolo manuale dell’offset del modulo. Esempio:

...
#
# backtrace:
# 0x0000000000BB7BF1 </data/default_mp.elf> + 0x7B7BF1
# 0x0000000000B924EA </data/default_mp.elf> + 0x7924EA
# 0x00000000009D75A4 </data/default_mp.elf> + 0x5D75A4
# 0x000000000083BE99 </data/default_mp.elf> + 0x43BE99
# 0x00000008000075C2 </i8fsuSWSEf/common/lib/libkernel.sprx> + 0x75C2
# 0x0000000000000000
#
...

Changelog

  • Elenco dei moduli.
  • Informazioni estese sulla console (inclusi PSID, SDK, versione del firmware, …).
  • Gestione estesa dei processi per ripresa, arresto e terminazione.
  • Scansione AOB di base.
  • Hook per trappole fatali.
  • Hook per backtrace.
  • Patch per coredump su tutti i firmware (evita la schermata blu quando un gioco va in crash).
  • Patch per sys_virtual_query (permette di interrogare pagine contrassegnate come sistema).
  • Mappa della memoria virtuale del kernel.
  • Lettura della memoria fisica in contesto kernel.

Nota: AFR è stato rimosso in questo aggiornamento a causa di problemi nel metodo con cui era implementato (scriveva all’inizio della base del kernel). Potrebbe essere reintegrato in futuro; per ora si consiglia di usare il plugin GH.

Download: Frame4 v0.3.2

Download: Source code Frame4 v0.3.2

Fonte: github.com

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.