45.第二阶段x86游戏实战2-hook监控实时抓取游戏lua

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

本次游戏没法给

内容参考于:微尘网络安全

本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要盲目相信。

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:44.第二阶段x86游戏实战2-C++HOOK提取游戏lua

本次用到的工具不好给,它的原理就是HOOK_LUA按钮的原理是hook lua_dostring函数得到它的入参并放到输入框(界面使用的是MFC框架,MFC框架百度有很多使用方式)里,然后调用测试按钮就是模拟调用 lua_dostring函数,调用 lua_dostring函数之前要得到游戏里的状态指针(前面已经写过找状态指针了),得到状态指针之后把输入框里的东西传给lua_dostring,然后添加过滤文本按钮就是把hook到的东西放到一个数组里,当数组里已经存在某数据了当再次hook到时不进行打印

上一个内容里通过游戏刚启动的时候把游戏初始化lua脚本时调用lua_dostring的函数进行了hook,从而把游戏中的lua脚本提取了出来

然后本次的监控lua通过hook lua_dostring函数来实现

然后首先在不对游戏做任何操作的时候它也会不停的调用lua_dostring函数,所以首先需要把这些东西过滤一下

如下图一个工具,它是hook了LuaPlus.dll里的lua_dostring函数

下图红框的内容是没有在游戏中操作,它自己打印的,然后要把这些东西进行过滤,然后点击下图红框按钮

它就会把下图蓝框的日放到下图红框里,下图当再次hook到下图红框里的内容时,它就不会在下图蓝框里进行打印

然后过滤完之后,点击清空

然后点击下图红框的按钮

然后在游戏中点击快捷栏上的技能,如下图红框可以看到它的lua脚本MainMenuBar_Clicked(5);

然后进行测试,如下图写lua代码,然后点击调用测试按钮

点击了调用处测试按钮之后游戏中的效果图,角色在坐骑上所以无法释放技能,就会弹出下图里的文字

然后hook到了lua脚本有时候点击调用测试没有反应,这是正常的,因为在调用lua之前它是可能有其它非lua的代码,这种的就要再具体分析了


相关推荐
CHH3213几秒前
在 Mac/linux 的 VSCode 中使用Remote-SSH远程连接 Windows
linux·windows·vscode·macos
承渊政道7 分钟前
动态内存管理
c语言·c++·经验分享·c#·visual studio
孤独得猿24 分钟前
聊天室项目开发——etcd的安装和使用
linux·服务器·c++·etcd
new coder32 分钟前
[c++语法学习]Day10:c++引用
开发语言·c++·学习
哼?~2 小时前
C++11标准 上 (万字解析)
开发语言·c++
给大佬递杯卡布奇诺2 小时前
FFmpeg 基本API avformat_alloc_context 函数内部调用流程分析
c++·ffmpeg·音视频
楼田莉子2 小时前
C++学习:C++11扩展:constexpr特性
开发语言·c++·学习
eurotruck2 小时前
c++贪吃蛇V1.0
开发语言·c++·贪吃蛇
Android系统攻城狮3 小时前
C++进阶之操作符重载函数operator[]:用法实例(四百三十五)
开发语言·c++
kobe_OKOK_3 小时前
windows 下载 pip包,debian离线安装
windows·debian·pip