【发布时间】:2013-05-10 21:12:31
【问题描述】:
我想知道是否可以在汇编指令执行后立即读取另一个进程的 eax 寄存器。
就我而言,我有以下汇编代码:
mov byte ptr ss:[EBP-4]
call dword ptr ds:[<&MSVCR100.??2@YAPAXI@Z>]
add esp, 4
这个想法是在“call dword ptr ds:[]”指令执行后获取eax值。 实际上,我必须在我的 C++ 代码中检索由另一个进程中创建的对象的实例化返回的内存地址。
不知道我是否足够清楚。请原谅我的英语不好。
【问题讨论】:
-
可以使用调试器。
-
您可以在该位置放置一个硬件断点。
-
更好的方法是修改其他进程,以便更干净地挂钩它。例如,您可能有一个注册的调出,该进程在调用将值传递给调出的函数后进行。这种低级黑客往往非常脆弱。