首页
社区
课程
招聘
[原创]关于绝地求生某辅助白名单画中画逆向分析
发表于: 2018-8-23 10:38 8224

[原创]关于绝地求生某辅助白名单画中画逆向分析

2018-8-23 10:38
8224

最近一款韩国的一款叫做绝地求生的游戏火了,几乎可以说是红遍了大部分的中国网吧。极富有创造力的中国外挂作者又发现了一块新大陆,什么路飞外挂,铁锅外挂,透视外挂什么的就不用说了。相信大家也是痛恨至极,本人本着技术研究的态度找了一些资料,对这些外挂的画中画进行分析,挑选了其中画中画方法比较牛逼的进行分析,发现其画中画方法使用的是steam 自身的画中画协议。下面给大家分享一下逆向steam画中画协议的过程。(顺便也会给出该类画中画协议的封杀方法,以便引起官方重视)
一、猜测外挂是怎么实现画中画的。
把外挂开起来,进入游戏界,玩了几局发现,只要游戏右下角只要弹出消息外挂的透视功能就会消失,等右下角的提示信息消失,外挂的透视功能就可以正常使用了。由此可以推测,该外挂使用的就是steam自身的一些方法。
然后列出可能方法:

驱动层绘制(根据现象应该不是在驱动层绘制的)

窗口化绘制(真全屏窗口是无法显示的所以排除)

call 函数方法 (call steam的绘制函数,极有可能)
该方法会用到注入 ,仔细检查游戏内存线程情况 查看线程起始地址有无指向可以模块或者可疑无模块的内存,其次查看带有可疑执行权限的的内存区块。发现并无异常。
然后检测下游戏正在执行的线程代码是否有被修改过的痕迹,发现并未有什么异常,该方法排除

hook 画中画方法:

(1)HOOK d3d绘图相关函数实现画中画
(该方法需要注入,经过检查发现该外挂并未注入游戏进程(如何检测是否注入游戏进程用到工具有pchunter,以及一些驱动级的模块便利工具,以及内存便利工具),且d3d相关函数的hook也是指向steam的一个绘制模块GameOverlayRenderer64.dll,加上这种会失效的现象该方式也被排除掉了).
偶然发现原来steam的绘制方式是hook的d3d的绘制函数。此乃大惊喜后面会根据这个作为突破口进行白名单协议分析。
(2)HOOK steam绘制函数,经过扫描以及分析发现 steam的绘制模块上没有被修改过的痕迹。这个方式也被排除
(3)修改游戏的绘制代码,经过检查整个游戏绘制流程(游戏画一帧的循环)一直单步发现并未经过其他非游戏方,非系统的模块及内存,该方法排除。


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2018-8-23 10:45 被feikele编辑 ,原因:
收藏
免费 1
支持
分享
最新回复 (7)
雪    币: 7852
活跃值: (2254)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
期待下文
2018-8-23 12:44
0
雪    币: 12848
活跃值: (9142)
能力值: ( LV9,RANK:280 )
在线值:
发帖
回帖
粉丝
3
然而几个月前gameoverlayui就已经加了(形同虚设的)校验了
VGUI_Panel010和VGUI_Surface039了解一下?
2018-8-23 13:30
0
雪    币: 223
活跃值: (94)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
别急明天就告诉你答案,
2018-8-23 14:05
0
雪    币: 6124
活跃值: (4646)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
5
然而几个月前gameoverlayui就已经加了(形同虚设的)校验了
2018-8-24 20:24
0
雪    币: 433
活跃值: (1900)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
6
说的都好复杂 dx9用了快一年了
2018-8-24 20:33
0
游客
登录 | 注册 方可回帖
返回
//