IDA Pro 处理器模块,为 XMOS xCORE、TI C7x/PRU、MicroBlaze 和 NVIDIA SASS 等不常见的 CPU、DSP 和 GPU 架构添加反汇编支持。
一系列处理器模块的集合,为 IDA Pro 扩展了对罕见及专用 CPU、DSP 和 GPU 架构的支持。
这些项目源于我对逆向工程 IDA 原生不支持的架构的兴趣,尤其是嵌入式系统、商业固件和专用计算硬件中遇到的架构。
| 架构 | 描述 | 仓库 |
|---|---|---|
| XMOS xCORE | 用于嵌入式音频、USB 和实时系统的事件驱动多核架构。 | xcore-ida |
| TI C7x / C7000 | 支持并行执行、向量运算和专用处理单元的高级 DSP 架构。 | c7x-ida |
| TI PRU / PRU-ICSS | 用于工业通信、自动化和嵌入式控制的确定性实时处理器。 | pru-ida |
| AMD/Xilinx MicroBlaze | 用于基于 FPGA 系统内部的可配置软核 RISC 处理器。 | microblaze-ida |
| NVIDIA SASS | 原生 NVIDIA GPU 机器码架构,具有按代际区分的指令编码。 | sass-ida |
每种架构都带来不同的逆向工程挑战,包括:
开发过程涉及研究厂商文档、检查真实二进制文件、使用参考反汇编器,以及通过实验分析指令编码。
目标是让使用 IDA 的研究人员更容易接触这些架构。
我尤其对出现在真实固件和可执行二进制文件中的冷门、不寻常或支持不足的处理器架构感兴趣。
合适的候选架构通常具备:
你是否遇到过 IDA 不支持、但你希望它支持的架构?
欢迎提出建议、进行技术讨论和反馈。
欢迎在相关仓库中发起 GitHub Discussion 或 Issue。
出于对不寻常处理器架构及其逆向工程挑战的好奇心而开发。