Pubblicato un nuovo aggiornamento per ps5-payload-klogsrv, il payload sviluppato dal developer John Törnblom ci permette di reindirizzare /dev/klog
ai socket collegati sulla porta 3232 della console PlayStation 5.
Il payload potrebbe risultare utile per sviluppatori homebrew che lavorano su console PlayStation 5 modificate, permettendo di monitorare errori e messaggi di debug in tempo reale.
Installazione e configurazione
Per utilizzare ps5-payload-klogsrv, è necessario compilare il payload (se non si usa una versione precompilata) e inviarlo alla console PlayStation 5.
Prerequisiti
- PS5 jailbroken: La console deve avere un firmware vulnerabile (es. 3.00–4.51, o fino a 10.0x con aggiornamenti recenti) e un exploit attivo (es. BD-J o WebKit).
- Macchina POSIX: Un sistema Linux (es. Ubuntu) con ps5-payload-sdk installato.
- Strumenti di rete: Strumenti come netcat (nc), curl o telnet per interagire con il server socket.
- Connessione di rete: La PS5 e il PC devono essere sulla stessa rete per comunicare.
Compilazione (opzionale, se non si utilizza una release precompilata)
Installazione del SDK:
- Scaricare ps5-payload-sdk da GitHub .
- Installare le dipendenze su un sistema Debian-based:
sudo apt-get install bash socat cmake pkg-config clang-15 lld-15
- Estrarre l’SDK in una directory, ad esempio:
wget https://github.com/john-tornblom/ps5-payload-sdk/releases/download/releases/v0.10/ps5-payload-sdk.tar.gz
mkdir -p /opt/ps5-payload-sdk-0.10/
tar xvf ps5-payload-sdk.tar.gz -C /opt/ps5-payload-sdk-0.10/
- Impostare la variabile d’ambiente:
export PS5_PAYLOAD_SDK=/opt/ps5-payload-sdk
Compilazione di klogsrv:
- Clonare la repository ps5-payload-dev/klogsrv:
git clone https://github.com/ps5-payload-dev/klogsrv
cd klogsrv
- Compilare il payload:
export PS5_PAYLOAD_SDK=/opt/ps5-payload-sdk
make
- Questo genererà il file
klogsrv.elf
nella directory del progetto.
Invio del payload alla PS5
Metodo 1: Manuale tramite netcat:
- Scaricare una release precompilata da GitHub.
- Avviare un ELF loader sulla PS5 (es.
elfldr.elf
) tramite un exploit (es. BD-J o WebKit). L’ELF loader ascolta sulla porta 9021. - Inviare il payload alla PS5:
export PS5_HOST=ps5 # Sostituisci "ps5" con l’IP della tua PS5
nc -q0 $PS5_HOST 9021 < klogsrv.elf
Alternativa, se si utilizza una release compressa:
wget -q -O - https://github.com/ps5-payload-dev/klogsrv/releases/latest/download/Payload.zip | gunzip -c -d | nc -q0 $PS5_HOST 9021
Metodo 2: Tramite PS5 Payload Loader:
- Utilizzare un’app homebrew come PS5 Payload Loader di cy33hc.
- Scaricare il file
klogsrv.elf
e copiarlo nella cartella/data/homebrew/payload-loader/payloads
sulla PS5 (via FTP o USB). - Avviare PS5 JAR Loader da un disco Blu-ray (BD-R/BD-RE) con l’ISO di cy33hc, quindi selezionare “Payload Loader” dall’Homebrew Launcher per eseguire klogsrv.
Connessione al server socket
Una volta che klogsrv è in esecuzione sulla PS5, connettersi alla porta 3232 dal PC:
export PS5_HOST=ps5 # Sostituisci con l’IP della PS5
nc $PS5_HOST 3232
I log di sistema verranno trasmessi in tempo reale al terminale.
Formattazione dei log (opzionale)
Utilizzare lo script klogfmt.py
per formattare o filtrare i log:
nc $PS5_HOST 3232 | python klogfmt.py
Lo script è incluso nella repository e può essere personalizzato per evidenziare errori o informazioni specifiche.
Dettagli tecnici
- Porta: klogsrv utilizza la porta 3232 per trasmettere i log. Assicurarsi che non ci siano firewall che lo blocchino.
Compatibilità con altri payload
- Funziona bene con
elfldr.elf
(ELF loader),ftpsrv.elf
(server FTP sulla porta 2121) ewebsrv.elf
(server web sulla porta 8080), è comunque integrato in soluzioni come etaHEN, che include klogsrv tra i suoi payload.
Stabilità
- ps5-payload-klogsrv è progettato per rimanere attivo anche in modalità riposo, grazie all’ELF loader che lo esegue in background nel processo SceRedisServer. Se il payload crasha, l’ELF loader continua a funzionare, garantendo robustezza.
Limitazioni
- Richiede una PS5 jailbroken, quindi è limitato a firmware vulnerabili.
- La connessione di rete deve essere stabile per evitare interruzioni.
- Non supporta interfacce TTY complete, quindi non è adatto per comandi interattivi complessi.
Changelog
- Ricompilato con l’SDK più recente (che include gli offset per i firmware 8.xx, 9.xx e 10.0x).
Download: ps5-payload-klogsrv v0.6
Download: Source code ps5-payload-klogsrv v0.6
Fonte: github.com