我正在对这个程序进行逆向工程。在开始之前,我想明确说明我合法拥有该程序,并且不打算为了重新分发而“破解”它。
所述程序使用了“书中”的大量反调试技术。我决定挂钩 GetProcAddress 并记录所有 API,然后确定那些可能用于反调试的 API。使用本教程http://www.codeproject.com/Articles/30140/API-Hooking-with-MS-Detours中的代码后,程序最终会因堆栈损坏而崩溃。我用谷歌搜索发现其他人在挂钩 GetProcAddress 时也会出现堆栈损坏https://easyhook.codeplex.com/discussions/55039
我的问题是挂钩 GetProcAddress 是否会导致堆栈损坏或程序的反调试技术检测到干预并导致堆栈损坏本身?