这听起来像是一件很容易完成的事情,但我似乎无法让它发挥作用。
我想通过指令在 ImmDbg 指令中运行程序的一部分,并跟踪它执行的一些操作(它所采取的跳转,寄存器被修改时等......)。这当然是一个繁琐的手工过程,有时我需要自动化它并根据目标添加一些自定义行为。
我没有在 Python API 中找到跟踪工具,所以我尝试单步调试代码。下面的示例代码应该只执行 10 条指令。
import immlib
imm = immlib.Debugger()
def main(args):
for i in range(10):
imm.stepIn()
return "OK"
然而,它似乎执行的指令有时少于 10 条,并且每次 stepIn() 调用都会使程序冻结大约一秒钟,使脚本变得太慢而无法执行任何有用的操作。