我正在寻找一种方法来在某个内存范围内记录进程的 EIP。我涉足了 x64dbg 的日志记录功能,但没有成功地获得内存范围条件工作。
对想法持开放态度。
我正在寻找一种方法来在某个内存范围内记录进程的 EIP。我涉足了 x64dbg 的日志记录功能,但没有成功地获得内存范围条件工作。
对想法持开放态度。
我在闲逛了一段时间后有了一个解决方案,我相信我可以找到更好的东西,与此同时,不管你去哪里。
使用“内存映射”选项卡,您可以在代码部分创建内存断点
右键单击某个部分-> 内存断点-> 执行-> 恢复
然后你可以将断点条件编辑成这样(我使用的是 64 位进程)
我只是想出了如何减少这个范围。
您可以像这样使用日志条件:
00007FF6D2F71000 < rip < 00007FF6D2F72000
这是象征性的
start_address < eip < end_address
或者
start_address < rip < end_address
它工作得很好。如果我找到更好的选择,我会更新
编辑:
https://x64dbg.readthedocs.io/en/latest/introduction/Expression-functions.html https://x64dbg.readthedocs.io/en/latest/introduction/Expressions.html
阅读一些文档,了解您可以做的很酷的事情
我设法让它只记录调用指令,并使用打印地址和指令
dis.iscall(rip) 在断裂条件和
{rip}:{i:rip} 在日志表达式中
感谢您提出这个问题,这实际上是我以前从未想过的非常有用的东西。