Home Homebrew Sfruttamento avanzato delle vulnerabilità di sicurezza su console PlayStation 4 e PlayStation...

Sfruttamento avanzato delle vulnerabilità di sicurezza su console PlayStation 4 e PlayStation 5: Tecniche e sviluppi di Flat_z

679
0

Negli ultimi mesi, l’attenzione della comunità di sviluppo per console PlayStation si è concentrata sulle innovazioni di Flat_z, uno tra i più noti sviluppatori nel campo del reverse engineering.

Con una profonda conoscenza delle vulnerabilità della PlayStation, il developer e hacker Flat_z sta lavorando a tecniche che potrebbero rivoluzionare il modo in cui gli utenti interagiscono con il sistema operativo delle console.

Il focus principale di Flat_z è sull’implementazione di exploit per il kernel che possano funzionare su firmware più recenti della console, inclusi quelli superiori alla versione 5.00.

Recentemente, ha condiviso progressi significativi nella stabilità e nella velocità degli exploit, descrivendo come diversi approcci, come l’utilizzo di WebKit, BD-J e Lua, abbiano avuto risultati variabili.

Mentre BD-J ha mostrato prestazioni inferiori a causa della sua dipendenza da Java, il codice scritto in Lua ha dimostrato di essere più veloce e più stabile.

Uno degli aspetti più interessanti riguarda l’utilizzo di tecniche avanzate di gestione della memoria, come l’aliasing di memoria tramite oggetti di memoria condivisa.

Questa metodologia consente di superare le mitigazioni implementate da Sony nel loro libc, un passo fondamentale per il successo degli exploit.

Inoltre, ha illustrato come si possano generare bytecode Lua in tempo reale, modificandoli per attivare la corruzione della memoria e cambiare puntatori e argomenti di funzione.

Flat_z ha dimostrato anche un forte spirito di collaborazione, invitando altri sviluppatori a lavorare insieme per migliorare le tecniche di sfruttamento, incoraggiando la condivisione di informazioni e risorse per affrontare le sfide comuni nel reverse engineering delle console.

Nonostante le sfide legate alle recenti mitigazioni di sicurezza implementate da Sony, Flat_z rimane ottimista. Ha in programma di testare ulteriormente le sue tecniche su versioni di firmware più recenti e spera di portare a termine un exploit kernel completo.

Di seguito un quadro completo di tutti i tipi di exploit, vettori di attacco, mitigazioni, implementazioni e sfruttamento.

1. Tipi di exploit e vettori di attacco:

Flat_z lavora su exploit che sfruttano vari componenti delle console PlayStation:

  • Vulnerabilità nei giochi: Exploit all’interno dei giochi vulnerabili, sia in formato fisico (dischi PSN) che digitale. Qualsiasi gioco vulnerabile può essere utilizzato per iniettare codice non autorizzato, sfruttando la loro debolezza per eseguire codice arbitrario.
  • BD-J (Blu-ray Disc Java): Un vettore basato su Java, che è stato sfruttato per ottenere codice eseguibile su PlayStation utilizzando dischi Blu-ray. Tuttavia, Flat_z non ama molto BD-J perché considera Java più lento e instabile rispetto ad altri metodi. Tuttavia, continua a migliorare il suo codice per stabilizzare l’esecuzione di exploit attraverso BD-J.
  • WebKit: Un altro vettore di attacco che sfrutta il motore WebKit utilizzato dalla PlayStation. Tuttavia, Flat_z preferisce evitare WebKit e si concentra su altre metodologie più efficienti.
  • PS2 emulazione: Sta esplorando vulnerabilità anche nella modalità emulata della PlayStation 2 su PS4/PS5, che può essere sfruttata per eseguire codice non firmato.

2. Mitigazioni e sfide nei firmware recenti:

  • Kernel Exploit: Sta lavorando su exploit del kernel per versioni di firmware inferiori a 5.00, ma sta cercando di adattare questi exploit per funzionare anche su firmware più recenti, come il 7.61. Tuttavia, i firmware 3.xx e successivi hanno introdotto mitigazioni che rendono più difficile sfruttare le vulnerabilità del kernel. Per esempio, il suo HV exploit funziona solo su firmware inferiori al 5.00.
  • Sfruttamento di memoria: Flat_z sta utilizzando una tecnica di aliasing della memoria per bypassare le mitigazioni introdotte nelle versioni più recenti di firmware. In pratica, crea una regione di memoria condivisa che viene mappata due volte: una per lettura e una per scrittura. Questo gli permette di aggirare le protezioni nella gestione della memoria della libreria C, come nel caso di memcpy, che impedisce modifiche sulla stack corrente.

3. Implementazione e sviluppo di exploit:

Flat_z descrive vari passi per l’implementazione degli exploit:

  • Multi-staged read/write primitives: Utilizza primitive di lettura/scrittura multi-stadio, dove ogni fase è più veloce della precedente. La fase finale utilizza funzioni native di lettura/scrittura, che sono state registrate via ROP (Return-Oriented Programming). Questo gli consente di avere exploit più veloci e efficienti.
  • Ritorno Oriented Programming (ROP): ROP è una tecnica fondamentale utilizzata negli exploit di sicurezza per bypassare le protezioni. Flat_z ha sviluppato un ROP che usa per gestire i thread, permettendo esecuzioni più rapide e sicure del codice.
  • Lua Scripting e Bytecode manipulation: Flat_z sta sfruttando Lua per creare exploit. Lua viene utilizzato in modo pesante per gestire operazioni complesse di memoria, inclusa la creazione di bytecode. Usa trucchi come l’aliasing della memoria e la manipolazione delle strutture interne di Lua per ottenere accesso non autorizzato alla memoria e manipolare funzioni native attraverso il ROP. Il suo codice Lua è molto personalizzato e ottimizzato per ottenere performance superiori rispetto a WebKit.
    • Sta lavorando anche su tecniche per bypassare problemi legati alla gestione del “garbage collector” di Lua e la corruzione della memoria durante la manipolazione di stringhe. Questo permette la creazione di codice exploit più robusto, riducendo il rischio di crash o bug durante l’esecuzione del codice.

4. Sfruttamento della memoria e mitigazioni del sistema:

  • Memoria condivisa e recupero dello stack ROP: Uno degli obiettivi principali di Flat_z è quello di garantire che, in un ambiente di exploit, il codice ROP non venga interrotto da corruzioni della memoria o dello stack. Per risolvere questi problemi, utilizza tecniche che coinvolgono il recupero dello stack corrotto tramite l’uso della memoria aliasata. Questo permette di ripristinare lo stack ROP corrotto e continuare l’esecuzione del codice exploit senza interruzioni.
  • Canary Protection: Le versioni più recenti di firmware hanno introdotto protezioni canary (un tipo di protezione della memoria che rileva la sovrascrittura dello stack), e Flat_z ha lavorato per bypassare questa mitigazione usando trucchetti avanzati di gestione della memoria.

5. Stato attuale del lavoro e prospettive future:

  • Flat_z ha testato con successo exploit su firmware 7.61, riuscendo a ottenere l’esecuzione di codice arbitrario e la corruzione della memoria del kernel. Sta ancora cercando di ottimizzare la velocità di esecuzione degli exploit e di adattare vecchie tecniche a firmware più recenti.
  • Ha intenzione di rilasciare un exploit del kernel per PlayStation 5 una volta soddisfatte determinate condizioni, anche se un recente tentativo di sfruttamento del kernel su PS5 ha incontrato un ostacolo legato alla mancanza di un leak delle informazioni del kernel.
  • Flat_z menziona di voler portare un exploit di salvataggio giochi che aveva sviluppato in passato, e di voler riscrivere l’exploit per l’Hypervisor (HV) per adattarlo ai firmware più recenti, come il 4.51.

Fonte: discord.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.