通过socket => 监听ip:774 发送命令 接受数据
命令: CMDS.CMD_PROC_LIST 获取所有进程列表
1. 找到 SceShellUI 进程
新闻:CTurt表示,WebKit进程已经突破FreeBSD系统限制,现在已经可以说成功“越狱”。目前已经可以成功从其他进程中dump(提取)内存(例如sceshellui),下一步是对内存打补丁。
2. 获取该进程的内存结构信息 CMDS.CMD_PROC_MAPS
1.. 结构中找到 libSceSaveData.sprx 保存存档结构点,据称这个模块拥有解密PS4数据的能力
2.. 找到 libSceUserService.sprx 用户信息结构点
3.. 找到 executable 可执行数据结构点
4.. 找到 libSceLibcInternal 内部库?
5.. 找到 (NoName)clienthandler 可执行命令句柄。没有找到,就将RPC加入到线程中 ps4.InstallPRC(pid)
3. 通过socket 执行内存命令 调用scceShellUI执行某个函数操作,并附带操作参数。
var ret = ps4.Call(pid, stub, libSceSaveDataBase + offsets.sceSaveDataInitialize3);
4. 获取进程 SceShellCore 的可执行句柄 executable
5. 发送内存写入命令
1.. verify keystone patch
2.. transfer mount permission patch eg mount foreign saves with write permission
3.. patch psn check to load saves saves foreign to current account
4..
5.. 获取账号信息
游戏存档位置:
ftp://192.168.1.93:2121/user/home/112e014d/savedata/CUSA34394/
解包存档位置:
ftp://192.168.1.93:2121/mnt/pfs/savedata_112e014d_CUSA34394_GOWRSAVE10/sce_sys/
E:PS4SAVEDATA3bb5fdb4bd74aabdCUSA34394
环境支持:
Updated to ps4debug v1.1.13
Universal Firmware support (5.05, 6.72, 7.0X, 7.5X) 9.0 系统
系统必须拥有一个user1账户。
在user1账户下有一个怪猎的游戏存档
/user/home/{user1}/savedata/CUSA34394/GOWRSAVE10.bin sdimg_GOWRSAVE10
相关文档:
https://github.com/ctn123/Binary-Releases
https://github.com/ChendoChap/Playstation-4-Save-Mounter
https://developer.aliyun.com/article/219506