c - Hook GetProcAddress 会导致堆栈损坏吗?

标签 c windows winapi hook getprocaddress

我正在对这个程序进行逆向工程。在开始之前,我想明确表示我合法拥有该程序,并且不打算以再分发为目的“破解”它。

该程序使用了“书本”中的大量反调试技术。我决定 Hook GetProcAddress 并记录所有 API,然后识别可能用于反调试的 API。使用本教程中的代码后 http://www.codeproject.com/Articles/30140/API-Hooking-with-MS-Detours该程序最终因堆栈损坏而崩溃。我用谷歌搜索,发现其他人在连接 GetProcAddress https://easyhook.codeplex.com/discussions/55039 时也会出现堆栈损坏。

我的问题是 Hook GetProcAddress 是否会导致堆栈损坏,或者程序的反调试技术检测到干预并导致堆栈本身损坏?

最佳答案

通常, Hook GetProcAddress 不会导致堆栈损坏。我编写了多种工具,这些工具一直都在执行此操作,这些工具多年来一直适用于从 Windows 95 到 Windows 8.1 的所有 Windows 版本。

所以这可能是他们正在做的明确惹恼你的事情;)

关于c - Hook GetProcAddress 会导致堆栈损坏吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24366154/

相关文章:

windows - OpenERP 7 标准插件添加生成错误 "No handler found"

检查命令是否在 Makefile 中不返回任何内容

c - fgets() 读取的字符少于预期

python - 使用用户输入作为Python 3中保存文件的路径?

c++ - 函数指针和dll加载顺序

python - 无法使用Python的PyCDC.DrawText()绘制Unicode字符

vb.net - 如何使用 GetAsyncKeyState 实现全局热键?

c++ - 将唯一的 int 数组映射到范围 0..n 的索引的哈希函数

c - 二维数组中数组的名称指向什么?

windows - "fuser -k <folder>"的 Windows 批处理等价物是什么?