IDA和x64dbg之间的主要区别是什么?

时间:2017-11-16 16:35:57

标签: reverse-engineering windbg ida ollydbg

IDA亲,x64Dbgolldbg& windbg用于逆向工程(作为Dissembler)和调试。

  • 他们之间的主要区别是什么?什么时候使用?

2 个答案:

答案 0 :(得分:4)

很难给出一个不以意见为基础的答案。试图保持事实:

  • OllyDbg和x64Dbg大致属于同一类别。它们的主要优点是没有符号信息的调试(尽管它们也可以使用符号信息进行调试)。 OllyDbg(封闭源代码)自从很长一段时间以来一直没有得到维护,并且仅限于x86 32位。另一方面,x64Dbg是主动维护的,开源并且可以处理x86和x64。两者都支持插件。

  • Windbg主要是一个符号调试器(虽然它显然没有任何符号)。由Microsoft维护,当符号可用时,它非常强大。它支持插件(在C或C ++中),脚本(它有自己的脚本语言,但它也支持正式JavaScriptthird-party python脚本加载器).NET调试并且可以进行内核调试(在这方面)它是Windows系统上的 事实上的内核调试器。在其最新版本中,它还支持TTD(Time Travel Debugging)。

  • IDA的主要优势在于它是一个交互式反汇编程序。您可以从python脚本以多种方式“查询”二进制文件(更准确地说,是从二进制文件生成的数据库)。它还支持自行调试或通过其他引擎(例如gdb或windbg引擎)进行调试。

答案 1 :(得分:1)

值得注意的是,其他专业的反汇编器/调试器是Binary Ninja(非免费)和Ghidra(开源)