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的代码,这种的就要再具体分析了


相关推荐
_Twink1e4 小时前
openJiuwen 实训营 Day 1 · WorkSwarm 入门教程
开发语言·c++·openjiuwen
公子小六4 小时前
基于.NET的Windows窗体编程之WinForms滑块与上下控件
windows·microsoft·c#·.net·winforms
dong_junshuai5 小时前
每天一个开源项目#87 fmt:24.5K Stars 的 C++ 格式化核心
c++·开源·github
雪的季节6 小时前
Multisim14.0的详细中文安装步骤【附安装包】
c++
Persistent的粽子!7 小时前
C++:类与对象(二)
开发语言·c++
蒸蒸yyyyzwd7 小时前
cpp 选手备战秋招学习笔记 day23
c++·求职招聘
.YM.Z8 小时前
C++ STL 容器深度剖析:vector 与 list 的模拟实现及对比
开发语言·c++·vector·list
学海浪太大9 小时前
笔记本电脑插入显示器没反应
windows
mengzhi啊9 小时前
QEventLoop loop配合loop.exec();替代while(1)。电脑cpu占用为0,使用while(1)cpu占用率100%
c++·qt
HugoStudio_SWAN9 小时前
洛谷 P1319 / P1320 压缩技术——同一枚硬币的正反面
c++·学习·程序人生·算法