Il developer Al Azif è tornato a sviluppare Exploit Host dopo quasi 5 anni dall’ultimo aggiornamento. Exploit Host semplifica il processo di hosting di exploit per console come PS4, PS5, PS Vita, Wii, Switch, ecc.. all’interno della propria rete locale.
Le caratteristiche includono la possibilità di ospitare il proprio exploit preferito, la memorizzazione della cache degli exploit per un utilizzo offline (a seconda del dispositivo) e l’invio di un payload a scelta dopo un exploit riuscito.
Blast from the Past Release: https://t.co/msZkm3RVtJ
Should have "complete" PS5 support, bring your own exploit. Includes a Windows EXE build for that one click hosting. pic.twitter.com/Y6r0tspRIV
— Al Azif (@_AlAzif) January 8, 2024
Sono presenti inoltre funzioni per il blocco dei domini di aggiornamento/telemetria, e la fornitura di un aggiornamento firmware specifico per il dispositivo (a seconda del dispositivo).
L’applicazione lato server è compatibile con quasi tutte le piattaforme, e offre anche la possibilità di compilare l’host in un sito web statico per essere eseguito su un server HTTP a scelta, con alcune limitazioni di funzionalità.
Per coloro che preferiscono non gestire il pacchetto autonomamente, è disponibile anche un servizio DNS remoto.
Caratteristiche
- Ospita un exploit a scelta.
- Consente la memorizzazione nella cache degli exploit per l’uso offline (dipende dal dispositivo).
- Invia un payload a scelta dopo un exploit andato a buon fine.
- Blocca la risoluzione dei domini di aggiornamento/telemetria.
- Invia un aggiornamento specifico del firmware al dispositivo (dipende dal dispositivo).
- L’applicazione lato server funziona praticamente su ogni piattaforma.
- Costruttore di siti web statici. Compila l’host in un sito web statico da eseguire su un server HTTP di propria scelta (con questo metodo si perdono alcune funzionalità, come DNS, updater, ecc..).
Se non si ha intenzione di ospitare personalmente il pacchetto, è possibile utilizzare il DNS remoto. Vedere la sezione Utilizzo del DNS remoto poco sotto.
Requisiti
- Se non si utilizza una release binaria è necessario Python 3.
- Privilegi di root su macchine non Windows.
Come scaricare
- Scaricate l’archivio
.zip
. - Scaricare con Git, assicurandosi di prendere i sottomoduli. Non sono inclusi exploit o payload. Questo è solo per gli esperti, scaricare l’archivio
.zip
se si hanno problemi:git clone --recursive https://github.com/Al-Azif/ps4-exploit-host.git
Utilizzo del DNS remoto (non viene eseguito nulla in locale)
- Assicurarsi di operare su di un dispositivo/firmware sfruttabile (ad esempio, PS4: <=9.00, PS5: <=4.51, ecc..).
- Su PS4/PS5, tale informazione è reperibile in
Impostazioni
>Sistema
>Informazioni di sistema
. - Nel caso in cui il firmware risulti eccessivamente recente, si presenta l’inconveniente di una mancanza di exploit pubblici disponibili e l’impossibilità di eseguire il downgrade.
- Su PS4/PS5, tale informazione è reperibile in
- Sul tuo dispositivo vai a configurare la tua rete come desiderato ma assicurati di impostare i server DNS su
165.227.83.145
e192.241.221.79
- Questo si verifica in genere quando si configura una rete “personalizzata” sul dispositivo.
- Entrambi gli IP possono essere utilizzati come DNS primario o secondario. Lancia una moneta per decidere. Selezione casuale con l’aiuto del bilanciamento del carico.
- Successivamente, effettuare una connessione a Internet tramite il dispositivo. Nel caso di supporto esplicito, la pagina dell’exploit dovrebbe presentarsi come il manuale utente online, il test di connessione a Internet e/o la homepage predefinita del browser. A titolo esemplificativo:
- Su PS4/PS5, procedere in
Impostazioni
>Guida utente
e selezionare l’opzione desiderata; la scelta dell’exploit sarà visibile. - Su PS4, l’apertura del browser rivelerà la selezione dell’exploit come homepage predefinita.
- Su Nintendo Switch, il test di connessione a Internet fungerà da punto di accesso all’exploit.
- Su PS4/PS5, procedere in
- Qualora si faccia uso di strumenti quali
Bin Loader
, si rende necessario l’impiego di un ulteriore programma per inviare il payload desiderato.
Come eseguire (esecuzione locale)
- Scaricare i file (come indicato nella sezione “Come scaricare” qui sopra).
- Fare doppio clic sull’eseguibile (
exploit-host.exe
,exploit-host.py
, ecc..). Se si avvia senza errori, prendere nota dell’IP fornito.- In alternativa, eseguire il programma o lo script dalla riga di comando (
exploit-host.exe
,./exploit-host
,python exploit-host.py
, ecc..). - Se non si è root quando si esegue su un computer non Windows bisogna utilizzare il comando
sudo
.
- In alternativa, eseguire il programma o lo script dalla riga di comando (
- Seguire la sezione
Utilizzo del DNS remoto
sostituendo l’indirizzo IP del DNS indicato nel passaggio precedente con gli indirizzi IP del DNS primario e secondario. - Al termine, utilizzare
Ctrl+C
per chiudere l’applicazione.
Nota: È possibile editare il file settings.json
per modificare il comportamento degli host. C’è una sezione qui sotto con maggiori informazioni.
Esecuzione su Raspberry Pi
Mentre la sezione “Come eseguire” si applica anche al Pi, ci sono alcune opzioni più complesse che si possono usare per il Pi, come l’esecuzione senza alcuna rete.
- Per funzionare come dispositivo autonomo da collegare direttamente al dispositivo tramite Ethernet, andare qui (supporta qualsiasi Pi con una porta Ethernet).
- Per funzionare come punto di accesso WiFi per il proprio dispositivo, andare qui (attualmente supporta ufficialmente RPi 3, ma potrebbe funzionare anche su altri dispositivi con adattatore WiFi).
Come utilizzare l’aggiornamento integrato
Ecco un esempio su come effettuare l’aggiornamento del firmware PS4 alla versione 5.05 su console che attualmente montano una versione inferiore del firmware.
Importante: Se avete già scaricato un aggiornamento ufficiale superiore al firmware 5.05, dovete prima eliminarlo.
- Apportare queste modifiche prima di avviare l’applicazione nella sezione
Come eseguire
. Osservare l’impostazioneUpdate [PS4_No_Update]
nelle informazioni del filesettings.json
qui sotto. - Inserire l’aggiornamento del sistema nella cartella
updates
con il nomePS4UPDATE_SYSTEM.PUP
.- Facoltativamente, inserire l’aggiornamento di ripristino nella cartella
updates
comePS4UPDATE_RECOVERY.PUP
. - 5.05 SYS MD5: F86D4F9D2C049547BD61F942151FFB55
- 5.05 REC MD5: C2A602174F6B1D8EF599640CD276924A
- Facoltativamente, inserire l’aggiornamento di ripristino nella cartella
- ASSICURARSI CHE IL DNS SIA IMPOSTATO CORRETTAMENTE!
- Dovrebbe esserci una pagina diversa nell’opzione
Aggiornamento software di sistema
>Visualizza dettagli
sulla PS4. Sarà evidente!- La PS4 non sta utilizzando il DNS giusto se si ottiene la pagina standard del changelog di Sony. INTERROMPERE IMMEDIATAMENTE E RIAVVIARE L’INTERO PROCESSO.
- Eseguire un aggiornamento del sistema sul sistema PS4.
- Tornare alla sezione “Come eseguire”.
Modifica del file settings.json
Probabilmente è una buona idea fare un backup del file settings.json
predefinito, per sicurezza. Qualsiasi impostazione non valida verrà segnalata e verrà utilizzato un valore predefinito.
Utilizzare una formattazione json valida. I valori booleani devono essere minuscoli, i numeri interi non devono essere quotati, ecc..
Impostazione | Note | Tipo |
Debug | Stampa le informazioni di debug dei server DNS/HTTP. | booleano |
Root_Check | Salta il controllo dell'utente root per Linux/OSX; disabilitatelo solo se siete sicuri di non averne bisogno. Causa errori di porta se impostato in modo errato. | booleano |
Public | Se il server è in ascolto su un IP pubblico (disabilita l'invio di payload diversi da "Auto_Payload e disabilita la visualizzazione/modifica delle impostazioni da remoto). | booleano |
DNS | Se il server DNS deve essere eseguito. | booleano |
HTTP | Se il server HTTP deve essere eseguito. | booleano |
HTTPS | Se il server HTTPS deve essere eseguito. | booleano |
DNS_Interface | L'IP dell'interfaccia a cui legare il server DNS. | stringa (indirizzo IP) |
DNS_Port | La porta a cui associare il server DNS. | int (1-65535) |
HTTP_Interface | L'IP dell'interfaccia a cui associare il server HTTP. | stringa (indirizzo IP) |
HTTP_Port | La porta a cui associare il server HTTP. | int (1-65535) |
HTTPS_Interface | L'IP dell'interfaccia a cui associare il server HTTPS. | stringa (indirizzo IP) |
HTTPS_Port | La porta a cui associare il server HTTPS. | int (1-65535) |
Compression_Level | Abilita la compressione gzip sul server HTTP; 0 è disabilitato, 9 è il più compresso. | int (0-9) |
UA_Check | Se l'UA deve essere controllato rispetto ai valori dell'impostazione Valid_UA. | booleano |
Theme | Quale tema utilizzare, i temi devono trovarsi nella cartella themes. | stringa |
Sticky_Cache | Se il manifest di appcache debba essere incluso in sé o meno. | booleano |
Auto_Payload | Payload da inviare a qualsiasi IP che accede al server su /success . Il carico utile deve trovarsi nella cartella payloads. | stringa |
Payload_Timeout | Il timeout, in secondi, per tentare di inviare un carico utile attraverso il menu del carico utile prima del timeout. | int (1-999) |
DNS_Rules | Blocco di controllo DNS falso. | |
DNS_Rules [Redirect IP] | L'indirizzo IP verso cui reindirizzare gli URL elencati nelle regole di reindirizzamento. | stringa (indirizzo IP) |
DNS_Rules [Redirect] | Gamma di domini da inoltrare a DNS_Rules [IP di reindirizzamento]. | array di stringhe (regex) |
DNS_Rules [Block] | Gamma di domini da bloccare. | array di stringhe (regex) |
DNS_Rules [Pass_Through] | Gamma di indirizzi IP per non modificare le richieste DNS. | array di stringhe (indirizzo IP) |
Valid_UA | User-Agents per consentire l'accesso agli exploit, utilizzati solo se UA_Check è abilitato. | array di stringhe (regex) |
Update | Blocco di controllo dell'aggiornatore. | |
Update [PS4_No_Update] | Alla versione PS4 (e a quelle inferiori) qui elencate non saranno serviti i file di aggiornamento. | float |
Update [PS5_No_Update] | La versione PS5 (e quelle inferiori) qui elencate non riceveranno i file di aggiornamento. | float |
Update [Vita_No_Update] | Le versioni PS Vita (e inferiori) qui elencate non riceveranno i file di aggiornamento. | float |
Informazioni sulla cache offline
- Le informazioni di reindirizzamento/tema vengono automaticamente memorizzate nella cache.
- Le informazioni di reindirizzamento/tema si aggiornano e si rinfrescano automaticamente.
- Gli exploit possono essere memorizzati nella cache in base al firmware specifico o tutti contemporaneamente utilizzando il menu a discesa e/o il pulsante
[Cache All]
nel menu di selezione dell’exploit. - Gli aggiornamenti degli exploit devono essere aggiornati “manualmente” cliccando sul pulsante di memorizzazione quando è disponibile un aggiornamento o verificando l’opzione “About” nel menu a discesa dell’exploit.
- Sarà indicato se non ci sono aggiornamenti quando si clicca sul pulsante.
- Se sei offline, i pulsanti di memorizzazione nella cache verranno nascosti, così come gli exploit che richiedono una connessione di rete o che non sono memorizzati nella cache.
Informazioni su autoload
- Gli exploit possono essere selezionati automaticamente facendo clic su “Autoload” nel menu a discesa degli exploit.
- Quando si apre la selezione dell’exploit, questo viene selezionato automaticamente.
- È possibile disattivare questa funzione cancellando i cookie del browser.
Changelog
- Host di exploit “PS5 Ready”.
- NON include i file di exploit. Basta metterli nella directory corretta per ospitarli, ad esempio:
/exploits/PS5/ELF-Loader/
Grazie a djbobo e hoppers per i test di supporto PS5.
Download: Exploit Host v0.5.0 (exe)
Download: Exploit Host v0.5.0 (python)
Download: Source code Exploit Host v0.5.0
Fonte: twitter.com