游戏远程代码注入和动态连接库的使用
2011-07-19 15:07
288 查看
前提是已经用汇编语言对远程基址进行了成功的捕获。在VC中,读取远程基址比较常用的方法有几种:可以采用hook钩子函数,也可采用windows API 远程进程函数对内存进行读取,然后获得远程进程在本机中的数据,并进行相关代码的注入,获取更高的执行效率。比较常见的API函数:FindWindow();//查找当前游戏运行窗口,GetWindowThreadProcessID();//得到游戏句柄OpenProcess();//获得游戏进程的访问权限ReadProcessMemory();//读写内存空间,这里包含了游戏改变数值的基址,注入函数的函数名CreateRemoteThread();//创建远程线程,注入代码动态链接库的创建和调用1创建动态链接库; 2 添加函数代码;3 在def文件中做一个套出的处理;4 运行发布版本,win32 release;5 创建MFC程序,将动态链接库和函数库文件套入MFC程序文件夹中,并且设置文件寻找路径link下写上文件名;6调用 先声明 -declspec(dllimport) int 函数名 (参数),或者#pragma comment(lib,“mydll.lib”)2 注入游戏中:以键盘为例:1 键盘回调函数 KeyboarProc;SetWindowsHook(创建键盘钩子函数,使用这个函数的时候,通过监视键盘动作,自动的调用回调函数。将游戏代码注入到游戏中去,完成所需操作。//安装线程钩子HHOOK SetWindowsHookEx(int idHook,//回调函数的类型
HOOKPROC lpfn, //钩子回调函数 ,键盘回调函数
HINSTANCE hMod,
DWORD dwThreadId //游戏线程的ID
);
相应的回调函数也是不同的,如:callWndProc CBTProc ,KeyboardProc MouseProc 有按钮按下回调函数,键盘回调函数,鼠标回调函数。由以上可以看出,要将代码注入,需要安装钩子函数产生相应的钩子函数,通过钩子函数产生回调函数,回调函数里写上注入代码。同时回调函数,可以考虑写入动态连接库中
安装游戏函数:创建游戏程序:加入以上动态链接库,当在游戏界面上按下键盘时,打开任务管理器,进程里可以发现游戏里注入了我们自己写的动态链接库。-----------------------------------------该文章出处:http://software.intel.com/zh-cn/blogs/2011/05/31/400007635/?cid=sw:prccsdn1705
HOOKPROC lpfn, //钩子回调函数 ,键盘回调函数
HINSTANCE hMod,
DWORD dwThreadId //游戏线程的ID
);
相应的回调函数也是不同的,如:callWndProc CBTProc ,KeyboardProc MouseProc 有按钮按下回调函数,键盘回调函数,鼠标回调函数。由以上可以看出,要将代码注入,需要安装钩子函数产生相应的钩子函数,通过钩子函数产生回调函数,回调函数里写上注入代码。同时回调函数,可以考虑写入动态连接库中
LRESULT CallNextHookEx( HHOOK hhk, int nCode, WPARAM wParam, LPARAM lParam ); LRESULT CALLBACK KeyboardProc( int code, WPARAM wParam, LPARAM lParam );
安装游戏函数:创建游戏程序:加入以上动态链接库,当在游戏界面上按下键盘时,打开任务管理器,进程里可以发现游戏里注入了我们自己写的动态链接库。-----------------------------------------该文章出处:http://software.intel.com/zh-cn/blogs/2011/05/31/400007635/?cid=sw:prccsdn1705
相关文章推荐
- 游戏远程代码注入和动态连接库的使用
- 游戏远程代码注入和动态连接库的使用
- 经过测试的 可以使用的远程注入代码!!!!!我的VC里面缺少一个stdafx.h需要拷贝一个到程序
- 使用CreateRemoteThread把代码远程注入指定exe执行
- 使用CreateRemoteThread把代码远程注入指定exe执行
- 如何使用 Idea 远程调试 Java 代码
- Spring-----代码中使用注入的Properties配置属性
- 使用rsync将本地文件更新到远程游戏服
- EasyHook远程代码注入
- scp命令的使用-远程代码管理
- 使用rsync + inotify 实现多台游戏服代码自动实时同步
- 远程代码注入的介绍与代码防御
- 代码注入之远程线程篇 转载自 Zachary.XiaoZhen - 梦想的天空
- EasyHook远程代码注入
- 在游戏全屏模式下,使用远程调试的设置方法
- 如何使用git命令同步代码到github或提交到多个远程仓库
- VB远程注入卸载DLL代码
- Myeclipse如何使用自带git工具向远程仓库提交代码
- 项目管理---git----快速使用git笔记(五)------本地项目代码提交到远程仓库---新建项目
- 【COCOS2DX-游戏开发之十】使用eclipse调试cocos2d-x Native C++ 代码