Join Us and become a Member for a Verified Badge to access private areas with the latest PS4 PKGs.
PS4 Jailbreaking       Thread starter phono       Start date Jan 13, 2018 at 4:56 PM       14      
Status
Not open for further replies.
If anyone is interested and wants to try, I created a PSX-CPL program in CSharp that combines the DNS-Server, HTTP-Server and one additional HTTP-Server for the ELF-loader and allows sending PS4 payloads with some updates HERE.

Additionally you can monitor DNS/HTTP requests.

I wanted to have one in all, so this replaces netcat (payloads + log client), nodejs (elfloader), webserver (playground), python (dns).

I made this for myself and it is working, but thought, somebody likes to improve it.

Download: PSX-CPL FULL / LIGHT v1.0.0 / psx-cpl-master.zip / GIT

You need to compile it and add the playgrounds, elfloader and payloads yourself. I left the references to the files in the project so that you can see what was where but it will fail to compile if not all files are present, simply remove them from the project.

:alert: WARNING: It was more or less a proof of concept to have one in all. This means this code is not polished, follows no coding standard and should not be used for any serious work as it could be harmful even if it was never intended! So only use it at your own risk and if you know what you do.

You might need to configure / disable your firewall because the program is listening on the ports 53 (dns), 80 (http), 5350 (elfloader http).

As I have not enough time to finish it, there could be done improvements like:
  • code cleanup
  • ui design and missing controls
  • stabilization
  • proper logging (log4net)
  • move to dotnet core to be able to use it with linux
  • add proxy
Thanks goes to all of the developers and contributors like CTurt, Hitodama, Specter, flatz, idc, fail0verflow,...

Original source for DNS library is: https://github.com/kapetan/dns (Mirza Kapetanovic)

Original source http server is: https://gist.github.com/flq/369432 (Frank Quednau)

Thanks to all contributing at https://stackoverflow.com/
PSX-CPL DNS HTTP with ELFLoader HTTP to Send PS4 Payloads.jpg
 

Comments

well i was excited but I could not make a connection using this tool. It's prob just me but I would need more instructions. Al azif tool work fine and I made sure to keep it closed when testing this.
 
You can preconfigure your ps4-ip in the config file: config\ps4ip.txt

When starting DNS you can verify it working with:

start cmd
nslookup (press enter)
server YOURIP (press enter)
psn.net (press enter)

This should print that YOURIP is responsible for psn.net (a test entry I have in the config file config\dns_redir.txt).
Test something not existing like xyz, it should print that it couldn't find the record.

Additionally you can monitor that DNS + both http-servers are listening with the following tool (run as admin) and sort by local port (you should see 53,80,5350): http://www.nirsoft.net/utils/cports.html

32bit: http://www.nirsoft.net/utils/cports.zip
64bit: http://www.nirsoft.net/utils/cports-x64.zip

For testing http you need to make sure that you have no proxy server configured in your system/browser. Then you should be able to open these urls from windows:

For Web Server:
http://YOURIP
http://localhost
http://127.0.0.1

http://YOURIP:80
http://localhost:80
http://127.0.0.1:80

For Elf-Loader-Web-Server:
http://YOURIP:5350

From PS4 you can of course not connect using localhost or 127.0.0.1. If you have configured the DNS of the PS4 to YOURIP, you can connect to something from the DNS entries like http://psn.net or http://manuals.playstation.net or http://YOURIP, http://YOURIP:80, http://YOURIP:5350, http://psn.net:5350 ...

If you want to connect using the ps4 manual directly to a playground, you need to drop the playground files to:

www\1.76\document\{YOURPS4LANGUAGE}\ps4 (example for english: www\1.76\document\en\ps4).

But you can put it anywhere as it should print the directory contents of www\1.76\ (or www\4.05 if you switch the firmwareversion in the GUI\).

UPDATE: If you have more than 1 IP active for example WIFI + LAN, I had not implemented the selection for your server IP so DNS would be working like in Round Robin mode and so would cause problems for requests answering unreachable IPs for the ps4 sometimes.

I added now a dropdown to select the IP that is connected to the ps4.

For whatever reason my branches with the compiled code got deleted so I uploaded the new version from scratch to github.
 
Small addition: for hosting the elfloader, I created a powershell script that can start a webserver directly from the not compiled csharp source file.

https://github.com/phonorepo/powershell-http

One needs to edit the .ps1 file and change to his own IP.
Port is currently preconfigured to 80.
Drop your html content to the www-directory.

There are 2 versions, one for Powershell v2 (Win 7+) and one for newer.

So this dosn't require to be compiled.

psx-cpl: some fixes + uploaded a compiled release
https://github.com/phonorepo/psx-cpl/releases
 
Status
Not open for further replies.
Back
Top