确定二进制文件中使用的 CPU 架构。 示例:
$ cpu_rec_rs /bin/bash /usr/lib/firmware/rtlwifi/rtl8821aefw*
Loading corpus from cpu_rec_corpus/*.corpus
----------------------------------------------------------------------------------------
File | Range | Detected Architecture
----------------------------------------------------------------------------------------
/bin/bash | Whole file | X86-64
/usr/lib/firmware/rtlwifi/rtl8821aefw_29.bin | 0x3200-0x4400 | 8051
/usr/lib/firmware/rtlwifi/rtl8821aefw_29.bin | 0x4600-0x5000 | 8051
/usr/lib/firmware/rtlwifi/rtl8821aefw_29.bin | 0x6000-0x6600 | 8051
/usr/lib/firmware/rtlwifi/rtl8821aefw_29.bin | 0x6600-0x6c00 | 8051
/usr/lib/firmware/rtlwifi/rtl8821aefw.bin | Whole file | 8051
/usr/lib/firmware/rtlwifi/rtl8821aefw_wowlan.bin | Whole file | 8051
----------------------------------------------
注意:由于该方法基于统计,误报是完全有可能的。你应该与其他来源交叉核对,并使用反汇编器验证结果。
特别是,较小的文件以及较小的滑动窗口更容易产生误报。常见的误报包括:
xmos_xs2aNDS32cpu_rec_rs 是原始 cpu_rec 的 Rust 重新实现。为什么要重新实现它?
原始 cpu_rec 包含大量用于实验和更新语料库所需的代码。如果你想尝试各种预测设置,请使用 cpu_rec。它还包含相关文档以及其背后理论的链接(SSTIC 演示文稿)。