Pubblicati due rapidi aggiornamenti per PS5 Shell Payload, il server shell di tipo tenet sviluppato dal developer John Törnblom per console PlayStation 5 jailbroken.
Il primo aggiornamento affronta alcuni problemi di memoria durante la modalità di sospensione, la versione successiva rilasciata solo poche ore più tardi apporta invece altre correzioni minori di stabilità minori, come la risoluzione di un’eccezione del puntatore nullo quando non vengono fornite opzioni e l’inclusione solo di shsrv.elf
nell’artefatto.
Come per tutti i payload sviluppati da Törnblom, anche PS5 Shell Payload può essere eseguito tramite i punti di accesso BD-J o webkit. Il server fornisce ai client connessi alcuni comandi di base simili a quelli UNIX, come ad esempio cd
, mkdir
, stat
e tutti gli altri.
Per distribuire il payload, avviare prima ps5-payload-elfldr, quindi caricare shsrv.elf
digitando i seguenti due comandi:
john@localhost:ps5-payload-shsrv$ export PS5_HOST=ps5
john@localhost:ps5-payload-shsrv$ nc -q0 $PS5_HOST 9021 < shsrv.elf
Una volta distribuito il payload, il server accetterà client simili a telnet sulla porta 2323:
john@localhost:ps5-payload-shsrv$ telnet $PS5_HOST 92323
Ci sono alcuni comandi rudimentali disponibili, come ad esempio cd
, ls
e mkdir
. Digitare help
in una shell telnet connessa per ulteriori informazioni. Ad esempio, per ottenere un elenco dei processi in esecuzione:
/$ ps PID PPID PGID SID UID AuthId Emul State AppId TitleId Command ... 61 50 50 50 1 480000001000000e Native SELF SLEEP 000e 40112 SceSpZeroConf 60 50 50 50 0 4800000000000028 Native SELF SLEEP 000d 40153 ScePsNowClientDaemo 59 50 50 50 0 4800000000000019 Native SELF SLEEP 000c 40102 SceRemotePlay 58 50 50 50 0 4800000000001004 Native SELF SLEEP 000b 40039 SceMediaCoreServer 57 50 50 50 0 4800000000000014 Native SELF SLEEP 000a 40109 ScePartyDaemon
È possibile eseguire i propri payload posizionandoli in una cartella inclusa nella variabile di ambiente PATH
, che viene inizializzata su /data/hbroot/bin
e /mnt/usb0/hbroot/bin
.
john@localhost:tmp$ wget https://github.com/john-tornblom/ps5-payload-sdk/releases/download/releases%2Fv0.6/Payload.binaries.zip john@localhost:tmp$ unzip Payload.binaries.zip samples/hello_sprx/hello_sprx.elf john@localhost:tmp$ curl -T samples/hello_sprx/hello_sprx.elf ftp://ps5:2121/data/hbroot/bin/ john@localhost:tmp$ echo "hello_sprx.elf" | nc -q0 $PS5_HOST 2323
Limitazioni
La sessione di accesso non è collegata a un TTY, quindi non è possibile segnalare, ad esempio, SIGINT
con Ctrl+C. Inoltre, la maggior parte dei comandi è solo parzialmente implementata. Se trovate qualche limitazione fastidiosa, è possibile inviare un problema su GitHub e potrebbe essere risolto.
Segnalazione di bug
Se si riscontrano problemi con ps5-payload-shsrv, si prega di aprire un problema su GitHub. Se si prevede di inviare richieste di pull che influenzano più di poche righe di codice, è consigliato aprire un problema prima di iniziare a lavorare sui cambiamenti.
Questo consente di discutere adeguatamente della soluzione prima di impegnare tempo ed energie.
Changelog v0.2
- Riscrittura importante, che risolve i problemi di memoria quando si passa alla modalità sleep.
Changelog v0.3
- sh: Correzioni minori di stabilità.
- mount: Corretta l’eccezione del puntatore nullo quando non vengono fornite opzioni.
- ci: Include solo
shsrv.elf
nell’artefatto.
Download: PS5 Shell Payload v0.3
Download: Source code PS5 Shell Payload v0.3
Fonte: github.com