如何从同一进程挂钩函数并获取调用函数的地址?

时间:2013-04-26 19:12:07

标签: c++ hook function-pointers

我需要这样做以避免从注入的代码中调用我的进程的函数。

所以想挂钩这个函数来检查调用是来自当前模块还是来自外部模块,然后我将执行调用的指令的地址与模块地址范围进行比较。

由于

1 个答案:

答案 0 :(得分:0)

MSVC有一个内在的_ReturnAddress,这给出了函数调用者的返回地址, 所以你可以在受保护函数的最开始调用它,并将它与指定的模块(基数,长度)进行比较,以检测它是否允许执行函数的左侧部分。