Al Azif's ps4 exploit host on ASUS router running Asuswrt Merlin Version 1.0 - YouEbr/ps4-exploit-host-on-Asuswrt-Merlin GitHub Wiki

Check out the newer method/version

Why not other already available guides?

This method is different that other methods out there.

  1. All the other methods that I checked, were done on tomato/ddwrt.
  2. All the other methods, change http port of router's GUI to something different than 80 (e.g 8080, 7777, ...). Therefore one needs to have that port entered into browser whenever they need to access the GUI of router.
  3. Asuswer-Merlin firmware does not let port change for main GUI; apparently only 443 (https) works in some cases.
  4. This guide aims to do minimum change on main settings of router.

Before we start:

This tutorial has been done on Asus RT-AC68U Router which runs Asuswrt-Merlin (version 384.4_2).

Throughout I will be using following IPs:

  • Router IP: 192.168.1.1
  • PS4 Static IP: 192.168.1.50

In addition, we will need a USB stick, formatted to ext2/3/4 (I used EaseUS partition manager to format it to ext3). The name of my USB drive is "1G". This is important since when you connect the USB drive to router, it get mounted under /mnt/NAMEOFUSBDRIVE. With that, mine is mounted as /mnt/1G. The path (/mnt/1G) will be use in this tutorial.

Here is a link for preparing your USB stick which Merlin has prepared.

Note: All files are under "Code" tab. Top of page, left side.

GUI Step:

In this step, we setup basics of what we need on router.

Setting up DNS and Static IP:

Goto LAN -> DHCP Server (http://192.168.1.1/Advanced_DHCP_Content.asp

  1. Set "DNS Server 1" to 191.168.1.1
  2. Set "Advertise routers IP in addition to user specified DNS" to "No"
  3. Set "Forward local domain queries to upstream DNS" to "No"
  4. Set "Enable DNSSEC support" to "No"
  5. Leave WINS Sever Empty

https://imgur.com/a/387tecn

Under "Manual Assignment" click on "Yes"

https://imgur.com/a/zHpB9RO

  1. Under "Manually Assigned IP around the DHCP list", from "MAC address" column select MAC address of your PS4. Under "IP Address" enter an IP address for your PS4 (e.g. 192.168.1.50). "Hostname" selection is optional, though you can add "PS4" there. Now it is time to click on PLUS sign to add your entries to the list.

https://imgur.com/a/uKVl9iQ

  1. Now all the way down, click on "Apply" to save all the changes.

Enabling JFFS and SSH

  1. Under "Administration->System" enable "JFFS".

https://imgur.com/a/oVH2i2F

  1. Under Services, enable SSH.

https://imgur.com/a/5XEvp0m

  1. Click Apply to save the changes.

Command line step:

This section covers what needs to be done while ssh-ed into router.

Install Entware:

Here is the link from original guide. Simply said, you need to log into your router (ssh) and then run "entware-setup.sh" command which comes with Asuswrt-Merlin.

Install Python

Execute following commands to install phthon3

  1. opkg update
  2. opkg install python3
  3. python3 -m compileall

Transfer couple of files into your router:

You can download the files from "Code" section. You either can scp them into your router OR create them on your router and copy&paste the contents into them.

dnsmasq.conf.add

or

  • vi /jffs/configs/dnsmasq.conf.add Then past the content of dnsmasq.conf.add file into it.

nat-start

or

  • vi /jffs/scripts/nat-start Thenm paste the content of nat-start file into it

Either way, you need to run following command on nat-start file to make it executable.

chmod 7777 /jffs/scripts/nat-start

Downloading ps4-exploit-host and setting it up

Download it

Navigate into your usb stick drive

cd /mnt/1G

Execute following command to download ps4-exploit-host-v0.4.5. Note for newer versions, you just need to update path and names accordingly.

wget https://github.com/Al-Azif/ps4-exploit-host/releases/download/v0.4.5/ps4-exploit-host-v0.4.5.zip

extract it

unzip ps4-exploit-host-v0.4.5.zip

Change the settings

After extracting the zip file, you will have a new directory called ps4-exploit-host. There is a file named "settings.json" under it. We will need to change 3 setting in setting.json. You can download "settings.json" from "Code" section and scp it into /mnt/1G/ps4-exploit-host/setting.json or you can open it up and change followings:

  1. Change "Interface_IP": "" to "Interface_IP": "192.168.1.1"
  2. Change "DNS": true to "DNS": false
  3. Change "HTTP_Port": 80 to "HTTP_Port:" 8888

Make it run

Open up file services-start

vi /jffs/scripts/services-start

then, at the end of file add following line

python3 /mnt/1G/ps4-exploit-host/start.py &

Save the file, and exit.

Reboot

You will need to reboot your router for all the changes to take effect.

PS4 Setup:

While setting up your PS4's network setting, select Manual, but just keep choosing automatic option. You do not need to setup DNS since your router is going to send its IP to PS4.