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


相关推荐
*TQK*20 分钟前
ZZNUOJ(C/C++)基础练习1031——1040(详解版)
c语言·c++·编程知识点
※DX3906※1 小时前
cpp实战项目—string类的模拟实现
开发语言·c++
萌の鱼2 小时前
leetcode 2080. 区间内查询数字的频率
数据结构·c++·算法·leetcode
xianwu5433 小时前
反向代理模块jmh
开发语言·网络·数据库·c++·mysql
敖行客 Allthinker5 小时前
从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
linux·运维·服务器·c++
IU宝5 小时前
list的使用,及部分功能的模拟实现(C++)
开发语言·c++
青草地溪水旁6 小时前
c++ list的front和pop_front的概念和使用案例
c++·容器·list
扎量丙不要犟6 小时前
跨平台的客户端gui到底是选“原生”还是web
前端·javascript·c++·qt·rust·electron·tauri
linhhanpy6 小时前
自制虚拟机(C/C++)(二、分析引导扇区,虚拟机读二进制文件img软盘)
c语言·汇编·c++·python·stm32·操作系统
大道戏7 小时前
如何本地部署DeepSeek
windows·ai·deepseek