Pwnagotchi
w/RPi Zero 2W and ups-lite V1.3
主要使用新的pwnagotchi镜像(适配64位)
对于Pwnagotchi w/RPi Zero 2W而言,有三大部分需要修复
- 移植
Nexmon的WiFi Monitor驱动至新内核 - 修复蓝牙网络共享
ups-lite插件适配ups-lite v1.3下面将分项进行记录
1. 移植Nexmon
由于项目中发布的镜像可能较旧需要使用sudo apt update; sudo apt upgrade 进行更新,其中内核可能也存在更新从而可能使之前修补好的WiFi驱动还原位官方版本,从而失去Monitor模式类似于有线网卡的混杂模式 这点可以通过输入命令iw list/iw dev来确认
修复步骤:
- 克隆
nexmon源:git clone https://github.com/seemoo-lab/nexmon.git*项目较大,约2G - (Optional)修复
setup_env.sh
因文件新行可能与`Linux`格式不符,需使用如下命令修复:
`sed -i 's/\r$//' [文件名]`
参考项目
Readme.md中步骤source setup_env.shsudo apt install raspberrypi-kernel-headers git libgmp3-dev gawk qpdf bison flex make autoconf libtool texinfosudo dpkg --add-architecture armhfsudo apt-get updatesudo apt-get install libc6:armhf libisl23:armhf libmpfr6:armhf libmpc3:armhf libstdc++6:armhf
检查动态库
ls -alh /usr/lib/arm-linux-gnueabihf- 确认
libisl.so.23.*和libmpfr.so.6.*并创建链接 sudo ln -s /usr/lib/arm-linux-gnueabihf/libisl.so.23.* /usr/lib/arm-linux-gnueabihf/libisl.so.10sudo ln -s /usr/lib/arm-linux-gnueabihf/libmpfr.so.6.* /usr/lib/arm-linux-gnueabihf/libmpfr.so.4
(Optional) 如有需要,降级驱动 *参考这个repo
编译驱动
- `cd patches/bcm43430a1/7_45_41_46/nexmon/`
- `make`
- `make install-firmware`
- 固化驱动 *参考这个链接
-
modinfo brcmfmac查看内核驱动路径 - 备份驱动 - 去往patches/driver/brcmfmac_[内核版本]-nexmon- 复制brcmfmac.ko.xz至/lib/modules/[内核版本]/kernel/drivers/net/wireless/broadcom/brcm80211/brcmfmac/(之前的驱动路径) -depmod -a-sudo reboot - 通过
iw list验证功能列表中存在Monitor
2. 修复蓝牙网络共享
- 【需验证】 使用默认环境可能存在可以配对但无法链接蓝牙的问题,可以通过
sudo apt install libspa-0.2-bluetooth
3. ups-lite插件适配ups-lite v1.3
- 使用(https://github.com/PhreakBoutique/UPSLite_Plugin_1_3/blob/main/upslite_plugin_1_3.py)来替换插件文件
- 插件文件:
/usr/local/lib/python3.11/dist-packages/pwnagotchi/plugin/default/ups-lite.py - (Optional)如
ups-lite因电量过低导致SOC失效,需使用这个Python脚本来刷新数据,运行一次后即可正常工作