FirmAE 初步使用

2023-02-15
  1. 0x00:介绍
  2. 0x01:安装
  3. 0x02:使用
  4. 0x03:调试注意点
  5. 0x04:相关资料

0x00:介绍

FirmAE是一款完全自动化的固件模拟和漏洞分析的工具,其固件模拟成功率与Firmadyne工具相比大大提升。


0x01:安装

# 从GitHub克隆项目
git clone --recursive https://github.com/pr0v3rbs/FirmAE

# 运行download.sh脚本,下载相关程序
./download.sh

#运行安装脚本
./install.sh

0x02:使用

FirmAE的工作模式分为5种:-c检查是否能模拟、-a漏洞分析、-r固件模拟的运行、-d用户级的调试、-b内核级的调试。

# 命令
sudo ./run.sh -c <brand> <firmware>
sudo ./run.sh -a <brand> <firmware>
sudo ./run.sh -r <brand> <firmware>
sudo ./run.sh -d <brand> <firmware>
sudo ./run.sh -b <brand> <firmware>

其中,<firmware>是固件路径,<brand>是固件的牌子,这个可以随意写。

在对固件模拟前,尽量先-c进行检查。在检查之后,运行和调试时的模拟速度也会变快。


0x03:调试注意点

在用户级调试时,选择4. run gdbserver一项时,可能找不到要调试的服务。这似乎是FirmAE没有把服务全部显示完:

image-20230215081422004
掉帧hhh~

我们只要按次回车使其返回选择页面,再选择4,就可以看到其它开启的服务了。

另外,如果我们服务程序是arm、misp等非x86架构的,需要使用gdb-multiarch来调试。连接远程调试:target remote 192.168.1.1:1337


0x04:相关资料

官方项目:https://github.com/pr0v3rbs/FirmAE

官方论文:https://syssec.kaist.ac.kr/pub/2020/kim_acsac2020.pdf

返回首页