***PS5 Hacking Guide für FW 3.00-4.51***
Eines vorweg! Möglicherweise ist dieser Guide schon bald wieder überholt und muss aktualisiert werden, da das PS5 Hacking noch am Anfang steht.
Einleitung / Grundsätzliches:
Was ist mit "Hacks" gemeint ? Bei der PS5 sprechen wir davon, dass das Ausführen von eigenem/unsignierten Code möglich ist. Um solchen Code auszuführen, wird heutzutage eine Kombination aus mehreren/einer Reihe von Hacks und Exploits genutzt, die letztendlich Kernelzugriff ermöglichen. Konkret wird der Browser bzw. die Engine hinter dem Browser mit einem WebKit-Exploit angegriffen. Wenn das erfolgreich ist, kann man schon etwas machen, aber nur in einer gewissen Umgebung/Sicherheitsstufe. Um Kernelzugriff zu erlangen muss dann wiederum aus dieser Umgebung ausgebrochen werden, was mit einem sogenannten Userlandhack/Exploit erledigt wird. Wenn das geklappt hat, besteht dann die Möglichkeit eigenen Code auszuführen.
Hierbei handelt es sich nicht um eine Custom Firmware, wie z.B. bei der PS3, sondern es ist ein temporärer Hack, das bedeutet, dass ihr den Exploit nach jedem Neustart der Konsole wieder ausführen müsst. Es gibt aktuell zwei Möglichkeiten den Exploit auszuführen, entweder über den BD-JB oder über den Web Browser der PS5. Dieser Guide soll euch einen einfach Einstieg ermöglichen, so dass ihr erstmal grundsätzlich in der Lage seid, eure gewünschten Codes/Programme auszuführen. Der "Jailbreak" an sich öffnet eure PS5 und macht sie bereit, eigenen oder veränderten Originalcode (wie z.B. Games) zu starten und Programme (sogenannte "Payloads") zu empfangen. Es sind zwei Schritte erforderlich, um den Jailbreak auf der PS5 auszuführen.
1. Vorbereitungen
Bitte begebt euch als Erstes in die Einstellungen und deaktiviert die automatischen Downloads (nicht das euch die PS5 die neueste Firmware installiert, während ihr mit dem Internet verbunden seid). Dazu geht ihr nach:
Einstellungen --> System --> Update und Einstellungen der Systemsoftware und schaltet die dortigen Optionen aus (Regler nach links) unter:
Update-Dateien automatisch herunterladen
und
Update-Dateien automatisch installieren
Geht dann zu Einstellungen --> System --> Energie sparen --> Im Ruhemodus verfügbare Optionen einstellen und schaltet dort ggfs. Mit dem Internet verbunden bleiben aus (Regler nach links).
Anschließend geht es zu Einstellungen --> System --> Energie sparen --> Zeit bis zum Aktivieren des Ruhemodus an der PS5 einstellen und setzt beide Optionen (Während der Medienwiedergabe & Während des Spielens) auf Nicht in den Ruhemodus versetzen.
Als nächstes muss ein etwaig im Downloadprozess befindliches Systemupdate gelöscht werden!
Drückt dafür die PS Taste und geht zu Downloads/Uploads --> Downloads/Kopien --> Download anwählen --> Abbrechen und löschen.
Das Deaktivieren der automatischen Updates verhindert jedoch nicht zwangsläufig das Herunterladen der Systemsoftware.
2. Update auf eine der JB kompatiblen FW Versionen
- Ladet euch zunächst das passende Firmware Update herunter und extrahiert den Inhalt auf eurem PC:
https://mega.nz/folder/iUYCyBqT#nzs0acYlQMZ-eMAN7y00Qg
- Kopiert anschließend den Ordner PS5 in das Wurzelverzeichnis eines nach FAT32 oder exFAT formatierten USB-Sticks.
Die Verzeichnis-Struktur muss am Ende dann so aussehen:
/PS5/UPDATE/PS5UPDATE.PUP
Stellt auch sicher, dass sich keine Gamedisc im Laufwerk befindet und deaktiviert das WLAN. Startet nun die Konsole in den Recovery-Mode:
- im Hauptmenü der PS5 die PS Taste drücken, nach unten navigieren und Ein-/Ausschalten --> PS5 ausschalten wählen, warten bis die Konsole vollständig runter gefahren ist, und den PS5 DualSense Controller per USB Kabel anschließen
- die POWER TASTE an der Konsole drücken & halten bis zwei Pieptöne zu hören sind, direkt nach dem zweiten Piepton die POWER TASTE loslassen
Jetzt sollte die Konsole in den Recovery-Mode starten. Steckt den vorbereiteten USB Stick in den freien USB Port und wählt zunächst:
3. Systemsoftware aktualisieren und dann
1. Von USB-Speichergerät aktualisieren
Hier sollte nun die Firmware Version 3.00 - 4.51, je nach verwendeter FW Version vom USB Stick angezeigt werden. Zum Abschluss des Updates sollte die Konsole neu starten.
Überprüft bitte nach dem Update, ob durch die neue Firmware die automatischen Downloads wieder aktiviert worden sind und deaktiviert diese ggf. wieder!!
3. Die Netzwerkeinrichtung
Begebt euch zu den Einstellungen --> Netzwerk und schaltet die Option "Mit dem Internet verbinden" ein, falls diese ausgeschaltet sein sollte (Regler nach rechts). Achtet darauf, dass die WLAN-Frequenzbänder auf "Automatisch" eingestellt sind (Auf den Netzwerknamen gehen und die Optionstaste drücken)!
3.1 Netzwerk-Neueinrichtung
Bei einer Neueinrichtung des WLAN Netzwerks wird wie folgt vorgegangen: Jetzt geht es zur Option darunter "Internetverbindung einrichten"--> Manuell einrichten --> WLAN verwenden --> Manuell eingeben. Dort müssen jetzt folgende Daten eingegeben werden:
SSID = Name des Netzwerks
Sicherheitsmethode = in der Regel WPA/WPA2 oder WPA3
Passwort = Passwort des Netzwerks
IP-Adresseinstellungen = Manuell
IPv4-Adresse = 192.168.X.111
Subnetzmaske = 255.255.255.0
Standard-Gateway = 192.168.X.1
Primäres DNS = 62.210.38.117 (muss später wieder geändert werden und wird weiter unten unter Punkt "4. Jailbreak ausführen --> 4.2" beschrieben)
Sekundäres DNS = 8.8.4.4 (muss später wieder geändert werden und wird weiter unten unter Punkt "4. Jailbreak ausführen --> 4.2" beschrieben)
Proxy-Server = Nicht verwenden
MTU-Einstellungen = Automatisch
Zum Schluss die Einstellungen mit "Fertig" speichern
Das X steht für einen individuellen Wert, der bei jedem Netzwerk anders ist!
3.2 Bereits eingerichtetes Netzwerk
Bei einem bereits eingerichteten WLAN Netzwerks wird wie folgt vorgegangen: Klickt auf den Netzwerknamen (SSID) und dann auf Erweiterte Einstellungen. Dort müssen jetzt folgende Daten eingegeben werden:
IP-Adresseinstellungen = Manuell
IPv4-Adresse = 192.168.X.111
Subnetzmaske = 255.255.255.0
Standard-Gateway = 192.168.X.1
Primäres DNS = 62.210.38.117 (muss später wieder geändert werden und wird weiter unten unter Punkt "4. Jailbreak ausführen --> 4.2" beschrieben)
Sekundäres DNS = 8.8.4.4 (muss später wieder geändert werden und wird weiter unten unter Punkt "4. Jailbreak ausführen --> 4.2" beschrieben)
Proxy-Server = Nicht verwenden
MTU-Einstellungen = Automatisch
Zum Schluss die Einstellungen mit "OK" speichern
Das X steht für einen individuellen Wert, der bei jedem Netzwerk anders ist!
Nun muss sich abgemeldet, und wieder neu angemeldet werden. Dazu muss die PS-Taste gedrückt, und auf das User Icon geklickt werden. Dort dann auf "Ausloggen" gehen.
4. Jailbreak ausführen
4.1) Nachdem wir uns wieder angemeldet haben, geht es zu den Einstellungen --> Benutzerhandbuch --> Benutzerhandbuch
Die dann erscheinende Meldung muss mit "Ja" bestätigt werden. Es sollte nun die Seite https://es7in1.site geladen werden. Es kann auch sein, dass vorher noch eine Auswahl zwischen PS4 & PS5 erforderlich ist. Dort wäre dann PS5 anzuwählen.
Hier wählen wir den Host von idlesauce unten rechts an, der bestätigt werden muss, bis am Ende dieser Screen zu sehen ist:
Wählt dort den "Jailbreak" Button an und wartet, bis dieses Menü erscheint. Eine etwaige Meldung hinsichtlich "Nicht genug freier Systemspeicher" muss bestätigt werden. Es kann hierbei auch zu Freezes oder einem KP kommen:
Hier muss nun der etaHEN Button angewählt werden. Wenn die unten aufgeführte Meldung erscheint, ist der Jailbreak vollzogen. Drückt nun die PS-Taste und kehrt mit der Kreistaste wieder zum XMB zurück. Ab jetzt ist die Gefahr eines Kernel Panics gebannt.
4.2) Geht anschließend nochmals zurück zu Punkt Punkt 3.2 und ändert die DNS Werte dann wie folgt ab:
Primäres DNS = 165.227.83.145
Sekundäres DNS = 192.241.221.79
Wichtig!!!! Prüft anschließend unter den Einstellungen --> System --> Update und Einstellungen der Systemsoftware, ob oben hinter Systemsoftware-Update keine Angaben zu finden sind und das Feld dort leer ist (das sollte nach der Meldung "...wird überprüft" der Fall sein). Damit ist sichergestellt, dass keinesfalls ein System-Update heruntergeladen werden kann). Sollte das nicht der Fall sein, rate ich entweder dazu, eine der Offline Methoden, wie ein im BrowserCache abgelegtes Exploit Menü, bei deaktiviertem Internet, oder die Nutzung eines ESP Modules, wie sie weiter unten im Spoiler "2. Weitere Möglichkeiten, um den Jailbreak auszuführen" aufgeführt werden. Außerdem sollte dann nochmals unter den Downloads/Uploads nachgeschaut werden, ob sich ein Systemupdate im Downloadprozess befindet, dass ggfs. wieder zu löschen ist (Siehe Punkt 1).
4.3) Ladet euch die PKG des PS5 Internet Browsers hier (klick mich) herunter und kopiert diese Datei in den Root eines nach FAT32 oder exFAT formatierten USB-Sticks. Es empfiehlt sich in diesem Zuge auch noch den der PS5 Xplorer, Itemzflow für PS5 und die Idlesauce App (kann unter Punkt 2 im nachfolgenden Spoiler "2. Weitere Möglichkeiten, um den Jailbreak auszuführen" heruntergeladen werden") auf den Stick zu kopieren. und steckt diesen in den USB-Port der PS5.
Nun werden wir über die Debug Settings --> Game --> Package Installer den PS5 Internet Browser und ggfs. auch noch die anderen empfohlenen Apps installieren, um später u.a. darüber, nach einem Reboot oder Coldboot, den Jailbreak Host erneut auszuführen. Damit erübrigt sich der Weg über das Benutzerhandbuch. Es kommt dabei zu einer Fehlermeldung "Es ist etwas schief gelaufen", aber die werden wir einfach wegklicken.
Öffnet nun den Internet Browser aus dem XMB und tragt die URL https://ps5jb.pages.dev in der Browserzeile ein. Wenn der Browser beendet und wieder neu geladen wird, kann die zuletzt aufgerufene Seite zu den Favoriten hinzugefügt werden. Wie das funktioniert, sollte selbsterklärend sein.
Da die PS5 nun exploitet ist, kann über die Debug Settings --> Game --> Package Installer jede andere für die PS5 geeignete Homebrew App installiert werden.
4.4) Weitere Exploit-Seiten, die im PS5 Internet Browser eingegeben werden können:
https://josexgonzalez.github.io/Autoexploit.github.io/
https://pkg-zone.com/exploit/PS5/index.html alternative URL zum idlesauce Host
https://ps5xploit.github.io/
wird noch erweitert....
1. Über ein ESP-Wifi Modul
Mithilfe eines ESP Moduls wird der Jailbreak von einem nicht internetfähigen Netzwerk initiiert. Unterstützt werden aktuell das ESP8266, ESP32, ESP32-S2 und ESP32-S3. Der Jailbreak wird hierbei nicht über den PS5 Internet Browser geladen, sondern über das Benutzerhandbuch! Die erforderlichen Daten können hier bezogen werden:
NodeMCU PyFlasher (klick mich)
ESP Binarys (klick mich)
Der COM Port kann bei jedem User anders sein und soll hier nur als Beispiel dienen.
2. Über eine installierte App
Mit dieser App (idlesauce.pkg) lässt sich der Jailbreak auch komplett offline ausführen. Nachdem diese App installiert und ausgeführt wurde, kann das Internet in den Netzwerkeinstellungen ausgeschaltet werden. Selbstverständlich muss sich die PS5 für die Installation der Idlecauce Host App im exploiteten Zustand befinden.
3. Offline Exploit Menü im Browser Cache einrichten (Benutzerhandbuch)
a) Die Einrichtung
Auf der PS5:
Führt zunächst den Jailbreak aus, falls noch nicht geschehen und ladet anschließend den Payload "PS5_Browser_appCache_remove". Geht danach in die Einstellungen --> System --> Web Browser und löscht die Cookies und die Website-Daten.
Diese Dateien müssen gelöscht werden, um den Browser Cache zu leeren:
user/home/user_folder/webkit/shell/NKCookie.jar.db
user/home/user_folder/webkit/shell/NKCookie.jar.db-shm
user/home/user_folder/webkit/shell/NKCookie.jar.db-wal
user/home/user_folder/webkit/shell/appcache/ApplicationCache.db
user/home/user_folder/webkit/shell/appcache/ApplicationCache.db-shm
user/home/user_folder/webkit/shell/appcache/ApplicationCache.db-wal
user/home/user_folder/webkit/shell/local/https_manuals.playstation.net_0.localstorage
user/home/user_folder/webkit/shell/local/https_manuals.playstation.net_0.localstorage-shm
user/home/user_folder/webkit/shell/local/https_manuals.playstation.net_0.localstorage-wal
user/home/user_folder/webkit/shell/resourceloadstatistics/full_browsing_session_resourceLog.plist
Rebootet danach die PS5.
Am PC:
Voraussetzung: Python Installation (klick mich)
Ladet euch dieses Host Paket (klick mich) herunter, extrahiert es und geht in den Hauptordner, wo sich die py Skripte und der Unterordner "document" befinden.
Bringt anschließend eure IPv4-Adresse in Erfahrung. Dafür gibt es zwei Möglichkeiten. Erstens über den Terminal mit dem Befehl ipconfig (Rechtsklick in einen freien Bereich des geöffneten Fensters, sodass sich ein Popup-Menü öffnet. Wählt dort "In Terminal öffnen".)
oder Zweitens über die Windows Einstellungen --> Netzwerk und Internet --> WLAN --> Eigenschaften von "Dein Netzwerkname". Dort ist im unteren Bereich die IPv4-Adresse angegeben.
Geht dann mit einem Rechtsklick in einen freien Bereich des geöffneten Fensters (wo sich die py Skripte und der Unterordner "document" befinden), sodass sich ein Popup-Menü öffnet. Wählt dort "In Terminal öffnen".
Tragt im Terminal den Befehl python host.py ein und bestätigt mit Return/Enter. Lasst den Terminal geöffnet.
Öffnet anschließend einen weiteren Terminal in diesem Fenster und tragt dort diesen Befehl (ohne die Gänsefüßchen) ein, der mit Return/Enter bestätigt werden muss "python fakedns.py -c dns.conf -i 192.168.178.48". Die fett markierte IP ist meine IPv4-Adresse und muss natürlich durch eure ersetzt werden! Lasst auch diesen Terminal geöffnet.
Schließt nun den Terminal mit der host.py Datei und erstellt einen neuen Terminal. Gebt hier erneut den Befehl python host.py ein und lasst den Terminal geöffnet.
Auf der PS5:
Öffnet die Einstellungen --> Netzwerk --> Einstellungen, tragt eure IPv4-Adresse für den primären DNS ein und bestätigt das mit "OK" (Siehe auch vor das korrekte Vorgehen Punkt 3.2 der Grundlegenden Einrichtung weiter oben). Die Internetverbindung wird hierbei fehlschlagen, was korrekt ist, aufgrund der fakedns, die wir oben eingerichtet haben, um die Verbindung zu den Sony Servern zu blockieren, was das Herunterladen eines Systemsoftwareupdates verhindert.
Öffnet jetzt das Benutzerhandbuch unter den Einstellungen --> Benutzerhandbuch, Gesundheit und Sicherheit und weitere Informationen --> Benutzerhandbuch --> Benutzerhandbuch
Das Exploit-Menü wird nun in den Browser-Cache geschrieben. Es erscheint eine Meldung auf dem Bildschirm, wenn der Vorgang abgeschlossen ist.
Deaktiviert jetzt das Internet! Das Menü steht nun Offline über das Benutzerhandbuch zur Anwendung bereit.
Am PC:
Die Terminal-Fenster können nun geschlossen werden.
b) Die Aktualisierung
Am PC:
Um ältere Payloads im Host austauschen zu können, muss der neue Payload in den Ordner "PS5-Exploit-Host/document/en/PS5/payloads" kopiert, und der alte Payload darin gelöscht werden.
Anschließend muss die Datei "payload_map.js" im Ordner "PS5-Exploit-Host/document/en/PS5" editiert werden. Das kann z.Bsp. mit dem Programm "Notepad++" erfolgen.
Am Beispiel des etaHEN muss nun der Name des Payloads unter "fileName" angepasst werden, ebenso auch die Versionsnummer unter "version". Anschließend muss die Datei gespeichert werden.
Es lassen sich auch weitere Payloads dem Host hinzufügen. Dazu müssen lediglich die entsprechenden Dateien in den "payloads" Ordner kopiert, und die Einträge in der "payload_map.js" hinzugefügt werden. Die Payload-Einträge liegen innerhalb der eckigen Klammern [Blöcke];und einer dieser Blöcke sieht so aus (am Beispiel des etaHEN):
{
displayTitle: 'etaHEN',
description: 'All-in-one HEN',
fileName: 'etaHEN-1.7B.bin',
author: 'LightningMods_, sleirsgoevy, ChendoChap, astrelsky, illusion',
source: 'https://github.com/LightningMods/etaHEN',
version: '1.7 beta'
},
Man kann also so einen Datenblock einfach kopieren, an der gewünschten Stelle einfügen und dann entsprechend bearbeiten/anpassen.
Zum Schluss muss noch die Cache Datei mit den Änderungen angepasst werden. Geht dazu mit einem Rechtsklick in einen freien Bereich des geöffneten Fensters (wo sich die py Skripte und der Unterordner "document" befinden), sodass sich ein Popup-Menü öffnet. Wählt dort "In Terminal öffnen" und tragt diesen Befehl ein: python appcache_manifest_generator.py.
Jetzt wird die Einrichtung unter Punkt a) wiederholt, um das aktualisierte Menü wieder in den Browser Cache zu schreiben, für die spätere Offlinenutzung.
Hier gibt es Support zu dieser Anleitung