2

我希望我以正确的方式提出这个问题,但我才刚刚开始尝试学习漏洞利用开发。我已经学习了几个教程,并开始在 Linux 中使用 gdb,我对此感到有些自在。我现在开始在 Windows 上使用 Immunity Debugger,并且有一个关于如何在 gui 中查看函数的问题。

在 gdb 中,我可以使用以下命令:

info functions
disas main

并且能够看到主要功能。为简单起见,我的编译代码未剥离。

如何在 Immunity 或 OllyDbg 中重新创建它?我想查看函数列表,以便我可以检查它们或在它们上设置断点。我好像想不通!

谢谢!

4

1 回答 1

3

这可以在 ImmunityDebugger 中以编程方式实现:

module = imm.getModule('calc.exe')
if not module.isAnalysed():
    module.Analyse()
functions = imm.getAllFunctions(module.getBase())
# functions is a list of function addresses in calc.exe

还有另一个功能:

imm.searchFunctionByName('name_to_search')

但根据我的经验,这不是很可靠。IDA Pro 是实现这一目标的更好方法。它的反汇编引擎优于 Ollydbg。您可以从 IDA 获得函数offets,然后在 Ollydbg 中找到它们。

最后,如果您正在进行漏洞利用开发,我会推荐 WinDbg。学习它需要时间,但它比 Ollydbg(例如内核调试)更强大、功能更丰富。

于 2013-02-08T23:50:26.850 回答