[Scena PS4] Rilasciato PS4ME (PS4 Memory Editor)

Arriva un primo tool per la modifica della memoria in tempo reale nei giochi della Playstation 4, lo sviluppo da parte del developer J0lama ora passa attraverso un particolare payload che prende il nome di PS4ME.dll.

Un primo approccio affrontato nei giorni scorsi aveva portato allo sviluppo di una semplice applicazione Linux capace di modificare la memoria di Call of Duty: Ghosts.

Il sistema prende base dalle chiamate di sistema ptrace che su Playstation 4 corrisponde alla chiamata di sistema 26, mentre l’esecuzione si rende possibile attraverso l’exploit al webKit sviluppato e pubblicato da cTurt.

Una volta avviata l’esecuzione del codice sul sistema si avrà accesso ai privilegi elevati (attraverso l’exploit dlclose scoperto sempre da cTurt e pubblicato da kR105).

Durante l’esecuzione del thread con accesso ai privilegi elevati e nel momento in cui ci sarà la scrittura diretta, oltre ad utilizzare l’exploit, questi andranno a disattivare anche la protezione ASLR (Address Space Layout Randomization).

Questo quanto descritto dallo sviluppatore nel precedente articolo, ora lo sviluppo passa attraverso una semplice libreria Windows che prende il nome di PS3ME.dll, simile per certi aspetti alla più famosa libreria PS3Lib.dll contenente il supporto per CCAPI e TMAPI.

La libreria presenta tutte le funzioni necessarie per collegarsi ad una Playstation 4 (possibile al momento solo su firmware 1.76) e di essere in grado di leggere e scrivere i processi all’interno della memoria.

Funzioni presenti

  • SendPayload (string IP, String payloadPath): Consente di inviare un payload ad un dato IP tramite la porta 9023 in modo che possa essere eseguito su PS4 Playground di cTurt.
  • Connect (string ip): Effettua la connessione alla PS4 con l’IP specificato.
  • Disconnect (): Effettua la disconnessione dalla PS4.
  • string [] getProcesses (): Ottiene una array di processi attualmente in esecuzione su PS4.
  • string AttachProcess (string ProcessName): Si collega ad un dato processo e restituisce un messaggio di errore in caso di guasto.
  • byte [] dumpMemory (string offset, string size): Esegue un dump della memoria per la dimensione specificata che inizia a partire dall’indirizzo della memoria specificata dall’offset restituendo l’array in byte.
  • writeMemory (string Offset, String value): Scrive l’indirizzo della memoria specificata dall’offset ad un byte specificato dal valore.
  • string readMemory (String Offset): Restituisce la lettura del byte nella locazione di memoria specificata dall’offset.

PS4MeTool

Il developer ha sviluppato una prima applicazione che dimostra il corretto funzionamento della libreria PS4ME.dll, il funzionamento è relativamente semplice, basta eseguirlo ed attivare successivamente l’opzione ‘Code execution’ su PS4Playground.

Successivamente basta cliccare su ‘Send’ nella barra delle opzioni per inviare il file PS4ME-Payload.bin all’interno della console. Per aggiornare i processi all’interno del gioco bisogna invece cliccare sul pulsante ‘Get Process’, questo ci permetterà di vedere il processo corrispondente al nostro gioco (eboot.bin/default_mp.elf).

Download: PS4METool con PS4ME.dll e Payload

(Visited 370 times, 1 visits today)

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *