尝试运行 MIPS 二进制文件时出现 QEMU fpu 模式错误

逆向工程 固件 奇木 仿真
2021-07-10 15:22:43

我使用 binwalk 解压了固件二进制文件,并通过运行文件 bin/busybox将架构标识为 MIPS 当我尝试使用适当的 qemu 静态版本运行二进制文件时,出现 FPU 模式错误,例如:

 chroot . ./qemu-mips-static bin/busybox
 qemu: Unexpected FPU mode 

我找不到有关此错误的任何信息。我已经在几个不同的固件上尝试过这个,但我一直遇到同样的错误。

操作系统是 Kali linux,安装了 qemu-user-static,qemu-mips-static 静态二进制文件位于解压固件的根目录中。

2个回答

根据源代码,您的 ELF 中的 EABI 不兼容。好像是MIPS特有的,你可以在这里找到结构体,这个结构体存储在一个特定的ELF段内,负责读取它的代码在这里我建议您确保此段存在并且它是否包含正确的值。我认为您可以使用readelf(1).

这可能是 qemu 的错误。我有一个类似的问题,并通过使用qemu 邮件列表中建议的补丁重新编译 qemu 设法解决了它