太多辣,以后看需求慢慢购入吧
RX
、TX
、GND
。闪存芯片
里面的数据,一般都为固件包。编程器的话一般买CH341A够用了,基本上8脚的芯片都支持。如果富裕的话编程器可以买个爱修的RT80H编程器,或者RT809F也不错。binwalk是一个固件解包的工具,当我们用编程器dump出一个固件用,需要用binwalk来解压。一般做misc也会经常用到。
sudo apt install binwalk
固件解包命令
binwalk -Me file.bin
家里旧路由器解包出来的文件,太多了没截全
这工具主要是用来仿真,将固件用qemu模拟启动起来,不过不是百分百模拟成功的,经常会仿失败,常见就是环境等问题。(建议还是买真机好)
安装可参考github上的文章:https://github.com/firmadyne/firmadyne#introduction
sudo apt-get install busybox-static fakeroot git dmsetup kpartx netcat-openbsd nmap python-psycopg2 python3-psycopg2 snmp uml-utilities util-linux vlan
git clone --recursive https://github.com/firmadyne/firmadyne.git
git clone https://github.com/ReFirmLabs/binwalk.git
cd binwalk
sudo ./deps.sh
sudo python3 ./setup.py install
sudo apt-get install postgresql
sudo -u postgres createuser -P firmadyne,带密码firmadyne
sudo -u postgres createdb -O firmadyne firmware
sudo -u postgres psql -d firmware < ./firmadyne/database/schema
替换config文件中的绝对文件路径
构建二进制文件
cd ./firmadyne; ./download.sh
安装所需的其他qemu
相关依赖
sudo apt-get install qemu-system-arm qemu-system-mips qemu-system-x86 qemu-utils
wget http://www.downloads.netgear.com/files/GDC/WNAP320/WNAP320%20Firmware%20Version%202.0.3.zip
mv WNAP320\ Firmware\ Version\ 2.0.3.zip WNAP320.zip
sudo python3 ./sources/extractor/extractor.py -b Netgear -sql 127.0.0.1 -np -nk "WNAP320.zip" images
#参数解释
-b "brand 品牌"
-sql "连接本地数据库"
-np "代表没有并行操作"
-nk "代表不提取内核"
如出现No module named ‘magic’错误,可以尝试使用pip3 install python-magic解决
接着是执行./script/getArch.sh
脚本来获取路由器固件的CPU架构。
sudo ./scripts/getArch.sh ./images/1.tar.gz
焯,这里卡住了. 但是找到了一个issue: ./images/1.tar.gz: Cannot open: No such file or directory · Issue #27 · attify/firmware-analysis-toolkit (github.com)
暂时不知道怎么解决