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

Bud*_*nga 3 windbg reverse-engineering ida ollydbg

IDA pro,x64Dbgolldbgwindbg用于逆向工程(作为Dissembler)和调试。

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

Nei*_*tsa 5

给出不是基于观点的答案是非常困难的。试图保持事实:

  • OllyDbg和x64Dbg大致属于同一类别。它们的主要优势是在没有符号信息的情况下进行调试(尽管它们也可以在符号信息下进行调试)。OllyDbg(闭源)自很久以来一直没有得到维护,并且仅限于x86 32位。另一方面,x64Dbg是积极维护的,开源的,并且可以处理x86和x64。两者都支持插件。

  • Windbg主要是一个符号调试器(尽管显然它可以在没有任何符号的情况下运行)。由Microsoft维护,当符号可用时,它非常强大。它支持插件(C或C ++),脚本(它有它自己的脚本语言,但它也正式支持的JavaScript第三方Python脚本加载器).NET调试,可以做内核调试(在这方面它事实上的Windows系统上的内核调试器)。在最新版本中,它还支持TTD(时间旅行调试)。

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

  • @BuddhikaChaturanga在静态分析方面,IDA是事实上的工具。它具有丰富的API(使用python),您可以用它做很多事情。在调试方面,我想说(这使该评论基于意见)不如特定的,成熟的调试器那么重要。 (2认同)