【发布时间】:2012-07-07 19:59:02
【问题描述】:
我正在为 Windows 构建一个 C++ 应用程序,我将与一个 DLL 挂钩(在汇编代码中)。但是我在逆向工程我制作的控制台应用程序时遇到了问题。
我想将函数地址保留在同一个位置,但每次我编辑和重建 DLL 时它们都会在内存中移动。
有没有办法让它们保持在同一个地方?有没有办法将变量(例如int)的后备存储保持在同一个位置(内存地址)?
【问题讨论】:
-
停止函数或全局变量移动的唯一方法是停止编辑。地址空间布局随机化使它们在此之后继续移动,旨在阻止您做您想做的事情。
-
请注意,您通常可以关闭 ASLR。
标签: c++ windows memory dll assembly