-
-
[求助]DLL打补丁
-
发表于:
2011-10-5 20:29
8072
-
一般DLL打补丁流程:创建一个DLL ,然后在这个DLL中LoadLibraryA加载要打补丁的DLL,
获取DLL基址,加上偏移地址,获取修改地址然后修改代码。
今天给一DLL打补丁,但是出现了问题,请大家帮帮忙,这个DLL在DLL初始化的时候就验证,验证不通过就退出
没时间修改代码就退出了。也就是说用LoadLibraryA 根本就没等 LoadLibraryA 返回基址的时候 DLL初始化已经完成了
hModule = LoadLibraryA("d:\\test.dll");
dPrintf("0x%X\n",hModule); //没等输出模块基地址 DLL初始化已经完成验证退出了
Address = (DWORD)hModule + 0x5EB70;
WriteMemByte((HANDLE)-1,(DWORD)Address,L"{C3}",true);
Address2 = (DWORD)hModule + 0x1BF74;
WriteMemByte((HANDLE)-1,(DWORD)Address,L"{90,90,90,90,90,90}",true);
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)