Ji4n1ng / firmguide

FirmGuide: Boosting the Capability of Rehosting Embedded Linux Kernels through Model-Guided Kernel Execution

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FirmGuide

FirmGuide can help you to develop a QEMU virtual machine for a Linux-based embedded system, especially boosting the capability of dynamic analysis of the corresponding Linux kernel. In the emulator, you can debug, trace, and test the Linux kernel to collect runtime information that can be used to understand vulnerabilities, PoCs, root causes of crashes in the Linux kernel. FirmGuide is an effectively complementary to Firmadyne that focuses on user space programs - FirmGuide focuses on the Linux kernel. More details are in our paper.

Plan

[ ] Upgrade QEMU 4.0.0 to the latest QEMU

Install

Tested on: Ubuntu 18.04

make; make qemu sparse

Usage

Convert a device tree file to a QEMU virtual machine.

./firmguide synthesize -dtb examples/plxtech_nas782x.dtb

Load a firmware image.

./firmguide upload -f examples/62771d14b82e554a95d048af99866c404acb196f.bin

Please look at Subcommand for more information.

Authors

Qiang Liu, and Cen Zhang

Contact

If you have any problems, please fire issues!

About

FirmGuide: Boosting the Capability of Rehosting Embedded Linux Kernels through Model-Guided Kernel Execution


Languages

Language:SWIG 75.2%Language:Python 18.5%Language:C 5.8%Language:Makefile 0.4%