Ghidra和Ida之间有比较吗?是否有 Ghidra 而 Ida 没有的任何特定特性和功能?有没有详细解释 Ghidra 的好资料(最好是书)?
Ghidra 和 Ida 有什么区别?
信息安全
逆向工程
2021-08-30 12:13:28
2个回答
这在很大程度上是主观的,但是:
- Ghidra在 GitHub 上是免费和开源的,包括反编译器。IDA 非常昂贵,尤其是当您开始添加反编译器许可证时。
- IDA 支持 Ghidra 不支持的一些架构,反之亦然。
IDA 有调试器,而 Ghidra 没有。截至 2021 年,Ghidra 的稳定分支现在通过 gdb 或 WinDBG 合并了一个调试器。- Ghidra 能够一次将多个二进制文件加载到一个项目中,而 IDA 对此的支持是有限的,而且大多是丑陋的 hack。这意味着您可以更轻松地跟踪应用程序及其库之间的代码。
- Ghidra 的反汇编器内置了数据流分析功能,当您单击寄存器或变量时,会向您显示数据的来源。IDA 有“哑”文本突出显示以显示该寄存器的其他用途。这些功能是相同概念的略有不同的实现,并且都有其用途。
- Ghidra 有设计内置的协作反汇编/反编译器项目,而 IDA 需要插件来进行协作,并且 IDA 数据库文件不是为了共享而设计的。
- Ghidra 有一个撤消按钮!它有效!(IDA 没有,而且非常烦人)
- IDA 更加成熟,并且多年来添加了许多 Ghidra 无法(还)反映的小功能。
- 由于 IDA 是一个更加成熟和无处不在的产品,因此围绕它构建了很多开源工具。
- Ghidra似乎对性能不错的超大 (1GB+) 固件映像有更好的支持。它在分析声明大内存区域的固件映像方面也没有问题。IDA 历来在这方面遇到过问题,这可能非常令人沮丧。
- 有趣的是,由于 x86 指令解码器的一些错误,Ghidra 对反汇编 Windows 操作系统二进制文件(例如 kernelbase.dll)的支持目前已被破坏。GitHub上有关于这个的问题。
这些观点在撰写本文时(2019 年 3 月)是正确的,但可能会随着时间而改变。
编辑 2020-04-07:Ghidra Book计划于 2020 年 7 月发布。目前只有前 8 章以早期访问 PDF 的形式提供。
这个问题更适合https://reverseengineering.stackexchange.com/questions/。
Ghidra和Ida之间有比较吗?
就在这里。其中一个由 Jeremy Blackthorne 和 Alexei Bulazel 在 2019 年的 Infiltrate 安全会议上制作。
- 演示视频(1 小时 17 分钟)
- 演示文稿中使用的幻灯片
- 包含所有材料的 github 存储库
是否有 Ghidra 而 Ida 没有的任何特定特性和功能?
以下是演示文稿中比较 Ghidra、IDA 和 Binary Ninja 的幻灯片:
还没有书。
几个重要的点:
- Ghidra 可以扩展以支持任何架构。可以通过Sleigh添加对架构的支持
- IDA 已在 7.3 版中进行了重构以包含撤消功能