【发布时间】:2016-07-05 21:53:24
【问题描述】:
我想做的是在我指定的模块调用的nt中的所有函数上设置一个条件断点。
我这样做的目标是在每次 X 模块调用 x nt 函数时编写调用堆栈,从而能够“映射”出混淆代码内部发生的事情。
在入口点中断后,我在 x nt 函数上设置了一个断点。恢复我的断点后,调用堆栈看起来像
nt!函数
moduleIspecified!0x123
....
那时我的想法是,我可以使用它为条件断点编写代码,例如:“IF caller is x module, and module is calling function inside y module THEN log callstack. ”。
值得注意的是,x64 内核模式不支持 watch 和 trace。 还值得一提的是,我决定使用这种方法,因为我无法通过静态分析来确定调用,也无法通过步进分析来确定调用。
另外:是否有更好/理想的方法来实现这一目标?
问候
【问题讨论】:
标签: kernel conditional windbg breakpoints callstack