我正在考虑对一些路由器模型进行逆向工程,并尝试让它们与 QEMU 一起运行。特别是我试图让网络服务器运行。我认为当前的问题可能是路由器的固件是否尝试使用 QEMU 默认不模拟的物理设备。我的主要目标是模拟各种路由器的固件并能够连接到他们的网络服务器。逆向工程社区的任何成员是否有使用 QEMU 模拟路由器的一般指南?
使用 QEMU 模拟路由器和其他嵌入式设备
逆向工程
固件
静态分析
动态分析
奇木
仿真
2021-06-09 07:05:42
1个回答
模拟一个完整的物理设备总是更像是一种实验性的练习。在这方面,您可以使用firmadyne,它旨在为MIPS 和ARM 设备模拟基于Linux 的嵌入式固件。它基于古老的 QEMU 项目。还有固件分析工具包,它是firmadyne 的包装器,可让您自动执行某些任务。
然而,firmadyne 并非没有缺陷。通常,您会遇到各种无法正确模拟的固件二进制文件(例如无法访问网络),这主要是由于模拟环境中缺少硬件。在这种情况下,可能需要手动调整。
通常情况下,为了能够与网络服务器交互,设备的完整系统仿真并不总是必要的。我们可以使用 binwalk 来提取文件系统并在 chrooted 环境中使用 QEMU 用户模式模拟运行 web 服务器。
进一步阅读:
其它你可能感兴趣的问题