过了TP的保护
OD附加游戏分析了游戏的功能CALL OD的代码注入器 添加下面代码注入成功 而多次点击也没问题
push 0
push 0x220000
push 0x15e8
mov ecx,DWORD PTR [0x0103fb10]
mov ecx,DWORD PTR [ecx+0x2c]
mov eax,0x5ee5e0
call eax
ret
问题1:当我重新来过一次 没有用OD附加游戏 直接代码注入器 注入后没反应 点击多次偶尔执行一次
问题2:我用VC写远程线程注入 OD附加和没附加都是没反应 而多次会游戏退出
//////////////////////注入CAL///////////////////
DWORD _stdcall CallXuanguai()
{
__asm
{
push 0
push 0x220000
push 0x15e8
mov ecx,DWORD PTR [0x0103fb10]
mov ecx,DWORD PTR [ecx+0x2c]
mov eax,0x5ee5e0
call eax
ret
}
}
//////////////////远程注入////////////////////
void CzhuruDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
HWND a=::FindWindow("GEMAINWINDOWCLASS",NULL);
if (a > 0)
{
// MessageBox ("成功!!");
DWORD PID;
::GetWindowThreadProcessId(a,&PID);
HANDLE hProcess=::OpenProcess
(PROCESS_ALL_ACCESS,false,PID); //打开进程
LPVOID mFuncAddr =::VirtualAllocEx(hProcess,NULL,4096,MEM_COMMIT,PAGE_EXECUTE_READWRITE); //申请内存空间
::WriteProcessMemory(hProcess,mFuncAddr,&CallXuanguai,4096,NULL);
HANDLE hThread =::CreateRemoteThread(hProcess,0,0,(LPTHREAD_START_ROUTINE)mFuncAddr,0,0,0);
::WaitForSingleObject(hThread,INFINITE); //等待线程结束
int JianCe =::VirtualFreeEx(hProcess,mFuncAddr,0,MEM_RELEASE);
::CloseHandle(hThread);
::CloseHandle(hProcess);
}
else
{
MessageBox("失败!!");
}
}
问题3:我用SetWindowsHookEx();钩子窗口注入DLL 在DLL里创建线程CreateThread();也是一样没反应 而多次也会游戏退出
*不知道是为什么 困扰了我还几天
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!