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


相关推荐
tyn18843 分钟前
记录一次conda虚拟环境pip安装报错[WinError 32] 另一个程序正在使用此文件,进程无法访问
windows·conda·pip·虚拟环境·虚环境
刚入门的大一新生44 分钟前
C++初阶-string类的模拟实现与改进
开发语言·c++
小冯的编程学习之路1 小时前
【软件测试】:推荐一些接口与自动化测试学习练习网站(API测试与自动化学习全攻略)
c++·selenium·测试工具·jmeter·自动化·测试用例·postman
C++ 老炮儿的技术栈2 小时前
什么是函数重载?为什么 C 不支持函数重载,而 C++能支持函数重载?
c语言·开发语言·c++·qt·算法
猪八戒1.03 小时前
C++ 回调函数和Lambda表达式
c++
源远流长jerry3 小时前
匿名函数lambda、STL与正则表达式
c++
tan180°4 小时前
Linux进程信号处理(26)
linux·c++·vscode·后端·信号处理
一只鱼^_4 小时前
牛客练习赛138(首篇万字题解???)
数据结构·c++·算法·贪心算法·动态规划·广度优先·图搜索算法
李匠20245 小时前
C++GO语言微服务之Dockerfile && docker-compose②
c++·容器
2301_803554525 小时前
c++和c的不同
java·c语言·c++