PSFree v1.4.0 included - https://github.com/kmeps4/PSFree I've merged the updates from kmeps4's kexploit.js and added Goldhen 2.4b16.2 thanks to Sistro
As of this commit, you must add this to the server block of /etc/nginx/nginx.conf types { application/javascript mjs; }
PS4RaspberryPi Following is the Write up on how to use the Raspberry Pi (Zero W, Zero 2 W, 4 B) to host a Web server, DNS Server, Key stroke Simulation, USB image and emulator Things required
- Raspberry Pi Zero W or Pi Zero 2 W or Pi 4 B
- SD Card minimum of 500 MB
How to Setup
- Restore the image into a SD card (using software like balenaetcher)
- Place SD card into the slot of the Raspberry Pi
- For Pi Zero W and Pi Zero 2 W (connect from the USB marked Pi USB port to PS4, second cable not needed)
Be sure to use a USB-Data-Cable! - For Pi 4 B (connect one USB C cable from pi to PS4)
- Power up the PS4
- One Time Setup
i.PS4 Network Connection -> Wifi -> Manual setup
ii. In PS4 find the Wifi Network called PiZero and connect to it using password as password
iii. For DNS set the primary DNS as 7.7.7.1
iv. Rest all automatic values - PS4 -> Browser -> visit http://7.7.7.1 or PS4 -> Settings -> Help
- Click on load jail break and wait
I. It will notify WEBKit is successful -> click on ok and wait
II. A popup will be thrown saying USB emulation started and wait for ps4 pop up
If Popup won't appear, check your USB-Cable
III. Once the USB message disappear then click ok
IV. Gold Hen will load automatically
How to make the Pi as client in local network
-
Main page -> Raspberry Pi (button)
-
Select the desired Wifi Network ID and fill in the password for the network
-
Click Connect to WiFi button , wait for 5 sec
-
Click Reboot Pi button
-
Find the Pi's IP address in your local network (by visiting Router Page , host name would be pizero, for ex 192.168.0.124) and make it static , so that same IP assign always
-
PS4 Network Connection -> Wifi -> Manual setup
-
Select you local network
-
For DNS set the primary DNS as static IP which you used in Router
-
Rest all automatic values
-
PS4 -> Browser -> visit http://(static IP) or PS4 -> Settings -> Help
-
Jailbreak
Auto JailBreak – Key stroke simulation
- Main page -> Raspberry Pi (button) -> AutoJB enabled
- Once this is done you should have the auto login option enabled to make it work (setting -> Login Setting -> Log into PS4 Automatically (checked))
- Reboot once the PS4 is Reboots , it will automatically, selects all menu options till JB page, it will also click ok on webkit popup,
- The auto sequence will stop at this point, user have to click the USB disappear button manually to completely the JB sequence
- Note: have already automated the entire sequence. since the JB success rate was dropping in the full sequence , we are stopping the auto sequence at page load
- This can be disabled in Raspberry Pi page so in, further boot it doesn’t attempt the auto Sequence
Free Storage to USB
- When we write the img file to SD card the remaining space was being wasted
- So during the first Boot the Raspberry pi will convert the remaining space as device
- This device can be mounted in two ways a. Main page -> Raspberry page, Load USB button b. SD Card -> PC
- Practical usage are , this will behave an external storage when loaded to PS4 a. You can plug SD card into PC and add Files b. Mount it PS4 install it c. PS4 data can be save into it d. Make it as an extended storage
Gold Hen
- The Goldhen payload come from a file call payload.js, this payload JS file can be updated via
- Place a new GoldHen bin under “Sdcard:/usr/html/Bin/Goldhen/”
- PS4 -> Guide / Help Menu -> GoldHen Update (button)
- After thsi update the new gold hen will be used (even after restarting)
- Note: Once updated the bin file will be deleted and you only have to do this if a new bin come one
How does the bin loading work
- Perform a Jailbreak
- We are using the Gold Hen bin listener option,so first enable the option under , PS4 -> settings -> goldhen -> Binloader
- Then come to PS4 -> settings -> guide -> choose payload button
- Note: The raw bin file is being transmitted using python code
**Other Bin Files ** The website will be formed dynamically based on the bin file placed on the “/Bin”. So if you want a new bin of your choice, add it using FTP update and then visit PS4 -> Help Guide Menu -> and look for the new button
How Can I update the bin file?
Method 1
- ftp://7.7.7.1 (or static IP on your local network).
- Port: 2121
- username: user
- password: fusand
Method 2
- Insert the SD card in a PC .
- There should be device which has folder like GoldHen…
- Add the Bins there
Pros:
- One Device for web server, Key strokes, DNS server and USB emulation
- The SD Card is being utilized fully
- Keys stroke sequence allows the possibility of PS4 Automation
- You can switch between offline and online mode , without a PC
- One micro USB cable is enough to boot the device
- You can leave the device in the PS4 itself, need not to remove and plug in again
- Smallest size OS and booting before PS4
Changes on 10
- Auto Jailbreak - Ps4 Key Stroke till JB page
- Utilization of the remaining space of SD card as USB
- Pi 4 B – Ethernet to local network
- Fixed Issue on the Idle Time, Update Trainer
- Removed cache on all pages , as it was breaking the live options
Discord Server https://discord.gg/58N4Y4KZbB
Video Link https://www.youtube.com/watch?v=2NCoceX7zKU
Developers
- PaulJenkin – Embed OS, Web Host, Key Stroke Simulation, USB utilization
- Dazen (d3structor84) – Apps Dev, Key stroke unmounts, Secure Root
Credits to
- Sleirsgoevy – Webkit, Offline Activator
- Chendochap – KeExploit
- TylerMods, Kameleon –Offline Trainer
- Kameleon - PSFree