最近在搞IoT的研究,但是难在设备比较难弄,只有固件,而没有设备,买吧,又太费钱,不划算。好在有很多项目可以在模拟环境中运行固件。但是几乎没有一个平台能够模拟所有硬件设备。IoT产品的架构也不尽相同。
在网上看到了这位大佬的文章,可以模拟出一些设备。并且这位大佬改装了一些项目,非常厉害。所以就借他的文章,来搭建一个固件模拟平台。但是弄了好几天,碰了好多坑才弄出来,特此写下这篇文章,来帮助更多的设备研究爱好者,跳过这些坑。
1、使用ubuntu 18.04 系统桌面版
系统下载地址:https://ftp.ubuntu-tw.org/mirror/ubuntu-releases/18.04/
2、配置git代理(在虚拟机上安装,访问本机代理地址)
git config --global http.proxy '192.168.3.1:7890'
3、设置 python 源,加快 python 模块下载速度
找到~/.pip/pip.conf,如果不存在就创建,这一步是为了加快下载 binwalk 依赖,添加以下内容
[global]
timeout = 10
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url= http://pypi.douban.com/simple/
[install]
trusted-host=
mirrors.aliyun.com
pypi.douban.com
4、安装python 系统集成了python3,没有Python2
apt install python
5、安装firmware-analysis-plus
git clone https://github.com/liyansong2018/firmware-analysis-plus.git
cd firmware-analysis-plus
./setup.sh
这个安装一般是没有什么问题的
安装完之后,修改 fat.config
文件中的密码,改为 root 系统用户的密码
6、安装 binwalk
git clone https://github.com/liyansong2018/binwalk.git
cd binwalk
./dep.sh
sudo python3 setup.py install
这样就没什么问题了。
7、打包固件
该程序默认给了一个固件,但是没有打包,因此运行不了,需要打包一下进入到
~/firmware-analysis-plus/testcases运行打包命令,将该目录下的所有文件打包为tar文件
tar -czvf wnap320_V3.7.11.4_firmware.tar *
8、运行固件
./fap.py -q ./qemu-builds/2.5.0/ ./testcases/wnap320_V3.7.11.4_firmware.tar
9、访问192.168.0.1 进入路由器界面
密码为空,即可登录成功
参考:
使用 firmware-analysis-plus 一键模拟固件_firmware analysis plus-CSDN博客