我的情况是我有一个可执行文件。当我在调试器 (x32dbg) 中启动它时,断点设置为每种情况(DLL 入口、DLL 加载、线程启动等),以限制在文件运行后立即执行的操作数量,
在转储中,我看到一些字节与 exe 文件中相同位置的字节不同。
我的想法是它与某种动态链接有关。这些值在以下情况下会发生变化: exe 已保存(即使内容与之前完全相同)并运行。因此,重新计算代码所在的偏移量和特定字节。然而,唯一加载的是ntdll.dll,然后第一个断点被命中。所以我猜 exe 的内容被复制到 ram,那个时候一切都好,然后神奇的部分发生了,子程序或什么知道要更改哪些字节并更改它们,然后调试器获得控制权。
