This project is aimed at setting up a local web host, with USB emulation, on select Raspberry Pi boards that can be used to exploit and jailbreak PS4 consoles running firmware version 9.00. Raspberry Pi Zero W / Pi Zero 2 W / Pi4 B are eligible boards as they support a USB on-the-go (OTG) gadget mode and eliminate the need to manually insert and remove the USB stick required in the exploit process. This project is implemented on a clean Raspberry Pi OS (Debian) install which makes it easier to repurpose the Pi to run additional applications and services on it.
Developed and Tested on Raspberry Pi 4 B but should work on Pi Zero W / Pi Zero 2 W / Pi4 B
- Clean Raspberry Pi OS install - easy to setup the Pi for other purposes as you desire
- Easily update exploit, GoldHen and payload files from the web interface
- One device for local web server and USB emulation
- One USB cable is sufficient to power the Pi and emulate USB
- You can leave the Pi permanently connected to the PS4. No need not to remove and plug in a USB stick to run explolit
- Write the image provided in the releases to an SD card (using program like Pi Imager or Rufus)
- Insert the SD card into the Raspberry Pi
- For Pi Zero W & Pi Zero 2W, connect the USB marked Pi USB port to PS4. Be sure to use a cable that supports data transfer
- For Pi4 B, connect a USB C cable from Pi to PS4
- Power up the PS4. This should also boot up your Pi
- Use
raspi-config
to expand the filesystem to the capacity of your SD card - On the PS4 go to Browser and visit http://ip.address.of.your.pi/ps4
- Click on the GoldHen button for the version you want to exploit with
a. A popup will be thrown saying USB emulation started and wait for ps4 pop up
b. Once the USB message disappears, Click ok
c. Gold Hen will load automatically - If you need SSH access, username is
pi
and password isps4jb
- Install a clean Raspberry Pi OS image to an SD card (Developed and tested on Debian Bullseye)
- Enable USB Gadget Mode on the Pi
a. Adddtoverlay=dwc2,dr_mode=peripheral
to the[all]
section inside/boot/config.txt
- Prevent the Pi from automatically becoming a USB gadget on every boot
a. Addsudo /sbin/modprobe -r g_mass_storage
to/etc/rc.local
- Install and setup
lighttpd
andPHP
- Configure
/var/www/html/ps4
as the document root directory for the exploit app (vialighttpd
configs) - Clone or download the source code from this repo
a.cd /home/pi
b.sudo git clone https://github.com/CrazeeGhost/PS4JbEmu.git
c.sudo git config --global --add safe.directory /home/pi/PS4JbEmu
- Allow the webserver user to run some commands as root without password
a. Addwww-data ALL = NOPASSWD: /sbin/modprobe, /sbin/reboot, /sbin/shutdown, /var/www/html/ps4/updateHost.sh
to yoursudoers
file using thevisudo
command - Make the web app accessible to the webserver
a.sudo chmod 755 /home/pi/PS4JbEmu/updateHost.sh
b.sudo /home/pi/PS4JbEmu/updateHost.sh
Note: Update Host
button on the web app will not work if you did not follow the directory strcture in the steps above
- Sleirsgoevy – Webkit, Offline Activator
- Chendochap – KeExploit
- Karo Sharifi – Offline Exploit Web Host
- PaulJenkin – Inspiration for USB Emulation