反模拟类游戏外挂 转

Posted enych

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反模拟类游戏外挂 转相关的知识,希望对你有一定的参考价值。

https://bbs.pediy.com/thread-178926.htm

普通模式调用SendMessage、PostMessage,增强模式调用keybd_event,mouse_event、 SendInput发送键盘鼠标消息。只要HOOK 内核层的NtUserPostThreadMessage、NtUserPostMessage、NtUserMessageCall、NtUserSendInput这几个API,并在其中判断发送的目的地址是否为我们要保护的进程就行了。附件中代码使用Hook KiFastCallEntry的方式Hook NtUserPostThreadMessage、NtUserPostMessage、NtUserMessageCall、NtUserSendInput这几个内核API。

比较常用的方式,很多游戏辅助用的就是这种方式。因为是操作类驱动中的函数,所以能同时兼容PS/2和USB的键盘鼠标模拟,被按键精灵、游戏辅助广泛使用。它直接调用KeyboardClassServiceCallback、MouseClassServiceCallback。这两个函数是Windows键盘鼠标端口驱动(Kbdhid.sys、i8042prt.sys、mouclass.sys、mouhid.sys)在获得键盘鼠标硬件输入后往上传递给类驱动(Kbdclass.sys、mouclass.sys)的两个回调函数。

 

若是键盘鼠标类驱动和端口驱动中有层过滤驱动(eaps2kbd),则需回溯多个栈帧(ebp+n)查找系统的键盘鼠标端口驱动。附件中代码使用Call Hook替换键盘鼠标回调。kbdclass.sys驱动中KeyboardClassServiceCallback函数的反汇编代码如下:

以上是关于反模拟类游戏外挂 转的主要内容,如果未能解决你的问题,请参考以下文章

反模拟类游戏外挂 转

对反游戏外挂技术的思考及实现

python登录成功后跳转游戏

java开发转游戏开发,一文说清!

独家开放反外挂能力 WeTest手游安全测试服务登陆腾讯云(内含《龙之谷手游》反外挂实战)

2019年unity3d从入门到精通必看