关于使用Luckfox Pico Plus 开发板 来折腾ps4的记录
之前一直使用的是树莓派3B那个板子来做注入灵魂的容器,现在尝试改用 Luckfox Pico Plus这个板子来代替树莓派。
换luckfox板的优点就是功率更小,可以直接在ps4的usb口上取电,价格也更便宜,也不需要再多占用一张tf卡,直接使用板上的nano引导系统就足够了。
1. 我手上 Luckfox Pico Plus板子 内存和存储情况如下:
[root@luckfox etc]# df -h
Filesystem Size Used Available Use% Mounted on
ubi0:rootfs 67.1M 61.9M 5.1M 92% /
devtmpfs 16.4M 0 16.4M 0% /dev
tmpfs 16.5M 0 16.5M 0% /dev/shm
tmpfs 16.5M 164.0K 16.4M 1% /tmp
tmpfs 16.5M 524.0K 16.0M 3% /run
/dev/ubi4_0 22.4M 17.7M 4.7M 79% /oem
/dev/ubi5_0 4.5M 24.0K 4.5M 1% /userdata
[root@luckfox etc]# free -h
total used free shared buff/cache available
Mem: 33.1M 17.2M 10.0M 688.0K 5.9M 12.4M
做一个linux服务器或其它的是够呛的 但做为做为嵌入开发和我想要运行 pppwn程序是绝对够用的.
2. 拷贝 pppwn c++版本到开发板内 (来源: https:// github.com /xfangfang/ PPPwn_cpp/ releases 去掉空格) 下载 其中的 arm-linux-musleabi.cortex_a7.zip 解压得到里面的 pppwn 文件
3. 之前生成的 stage1 stage2 目录二进制文件拿回来(怎么来这里忽略) 放在和pppwn同目录里 结构如下:
[root@luckfox ~]# pwd
/oem
[root@luckfox ~]# tree
.
|-- pppwn
|-- stage1
| `-- stage1.bin
|-- stage2
| `-- stage2.bin
4.通过 ip a 命令获取luckfox的网卡名叫 eth0 再输入 /oem/pppwn --interface eth0 --fw 1100 --auto-retry 能正常出现Waiting for PADI 有戏了
[root@luckfox ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq qlen 1000 ///(备注: 这里还没插网线 所以显示 NO-CARRIER)
link/ether 46:79:d1:25:fb:df brd ff:ff:ff:ff:ff:ff
3: usb0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 06:bd:6b:33:1d:e5 brd ff:ff:ff:ff:ff:ff
inet 172.32.0.93/16 brd 172.32.255.255 scope global usb0
valid_lft forever preferred_lft forever
[root@luckfox ~]# /oem/pppwn --interface eth0 --fw 1100 --auto-retry
[+] PPPwn++ - PlayStation 4 PPPoE RCE by theflow
[+] args: interface=eth0 fw=1100 stage1=stage1/stage1.bin stage2=stage2/stage2.bin timeout=0 wait-after-pin=1 groom-delay=4 buffer-size=0 old-ipv6=off auto-retry=on no-wait-padi=off real_sleep=off
[+] STAGE 0: Initialization
[*] Waiting for PADI...
^C[*] Sending PADT...
5. 在 /etc/init.d 目录里建立一个shell批处理 S99pppwn文件 把执行命令 /oem/pppwn --interface eth0 --fw 1100 --auto-retry 编辑该文件
[root@luckfox ~]# vi /etc/init.d/S99pppwn
[root@luckfox ~]# chmod +x /etc/init.d/S99pppwn
[root@luckfox ~]# cat /etc/init.d/S99pppwn
#!/bin/sh
/oem/pppwn --interface eth0 --fw 1100 --auto-retry --stage1 /oem/stage1/stage1.bin --stage2 /oem/stage2/stage2.bin
6. reboot 一下 运行一下 ps -ef|grep pppwn
[root@luckfox ~]# ps -ef|grep pppwn
737 root {S99pppwn} /bin/sh /etc/init.d/S99pppwn start
738 root /oem/pppwn --interface eth0 --fw 1100 --auto-retry --stage1 /oem/stage1/stage1.bin --stage2 /oem/stage2/stage2.bin
775 root grep pppwn
pppwn 已经自启动 跑在进程里了
7. 实机测试:
直接usb口取电 LAN口直接用 568A对568B网线 接入ps4网线
启动ps4后 稍待一会儿 就注入成功了