我正在.exe使用 IDA调试文件,并且总是在我的堆栈中看到特定的值,例如。AABBCCDDEEFF.
我对这个值很感兴趣,我想知道这个值从哪里来,它是如何被压入堆栈的。
我如何放置一些条件,以便当我的堆栈包含此值时,调试器会中断,以便我可以看到哪个函数将其推入/推入堆栈?
我正在.exe使用 IDA调试文件,并且总是在我的堆栈中看到特定的值,例如。AABBCCDDEEFF.
我对这个值很感兴趣,我想知道这个值从哪里来,它是如何被压入堆栈的。
我如何放置一些条件,以便当我的堆栈包含此值时,调试器会中断,以便我可以看到哪个函数将其推入/推入堆栈?
这已经在这里得到了回答:OllyDbg:如何为堆栈中任何位置的值设置条件断点?
mrexodia为x64dbg 调试器提供了一个特定的插件,它可以完全满足您的要求:https : //github.com/mrexodia/StackContains
取自这里:
当值00E60000出现在堆栈上时,这将中断,如下所示:
正如我已经提到的,这些图片取自我在上面链接的线程。
我建议您阅读完整的线程以全面了解该过程。
我确实意识到您在问题中提到了IDA,但是使用我在上面链接的 x64dbg 调试器中的插件可以让您的工作变得更加轻松。
祝你好运 :)
你需要一个追踪器来处理这些事情。查看 Ponce 等工具https://github.com/illera88/Ponce