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


相关推荐
习惯就好zz1 小时前
WSL2 安装Ubuntu卡在安装进度0%无响应问题解决
linux·windows·ubuntu·wsl·wsl2
不染尘.4 小时前
2025_11_7_刷题
开发语言·c++·vscode·算法
似水এ᭄往昔4 小时前
【C++】--stack和queue
开发语言·c++
仰望—星空4 小时前
MiniEngine学习笔记 : CommandListManager
c++·windows·笔记·学习·cg·direct3d
怕什么真理无穷5 小时前
C++面试4-线程同步
java·c++·面试
fpcc6 小时前
c++23中的print和println
c++·c++23
玉树临风江流儿7 小时前
C++左值、右值、move移动函数
开发语言·c++
ue星空7 小时前
Windows内核函数使用
windows
许长安8 小时前
c/c++ static关键字详解
c语言·c++·经验分享·笔记
Murphy_lx8 小时前
C++ thread类
开发语言·c++