首页
社区
课程
招聘
[原创]对于某游戏残端逆向分析 并同步使用更高级的客户端过程 (一)
发表于: 2022-7-1 15:43 16353

[原创]对于某游戏残端逆向分析 并同步使用更高级的客户端过程 (一)

2022-7-1 15:43
16353

最近在浏览github的时候发现了一份游戏泄露的服务端,客户端对应使用的为2013年06月27的客户端exe文件,单机玩的时候发现内容很少,为了让这个服务端使用更高级的客户端开始对游戏进行逆向,修改添加服务端所缺少,错误的包

 

下载了2013年10月31号的客户端文件,改hosts发现W10无法进入游戏,W7可以正常进入游戏,猜测游戏反作弊驱动之类的东西不支持w10,对游戏客户端进行脱壳.

 

对于脱壳研究甚少,查询论坛有关资料发现后,一些简单的壳脱壳过程就是寻找OEP,修复IAT这样的过程,报着试一下想法开始我的骚操作脱壳.

 

使用W7虚拟机进入游戏,dump一份游戏,参考别人13年07月25的客户端文件我们可以轻松找到入口点.(ps:游戏内测时候有一份没加壳的exe也可以参考)

 


 

利用第一个call的入口做特征
8B FF 55 8B EC 83 EC 10 A1 ? ? ? ? 83 65 F8 00 83 65 FC 00 53 57 BF ? ? ? ? BB ? ? ? ? 3B C7 74 0D 85 C3 74 09

对比2方文件字节后可以发现第一个call,才是入口ep call过来的第一个call,这个时候我们就要想着如何在EP上下断来dump游戏,检查发现后他会先加载完2个反作弊的dll才会跑起来游戏,我们使用detours hook LoadLibraryW里面写个msgbox卡住进程,等待游戏加载到TenSLX.dll的后,在0x141E37B下硬件改写断点,断下来后,vm的内存就被跑出来了,然后上面下断点,运行断下,dump游戏,开始修复IAT. (ps:记得用ARK工具恢复游戏的进程钩子)




 

修复IAT的时候注意游戏重载了好几个模块 需要自己手动修复下然后就脱壳了.(游戏里面还有反作弊的一个模块,那个模块的IAT也需要修复)

 

以下为2014年08月最后一个客户端进入游戏截图

 



[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

最后于 2022-7-1 16:35 被aRax编辑 ,原因:
收藏
免费 10
支持
分享
最新回复 (10)
雪    币: 264
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
脱壳后需要手动加载TerSafe.dll,否则游戏频道闪退,LoadLibraryW(L"TerSafe.dll")即可
2022-7-1 15:44
0
雪    币: 264
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3

[esp]拿到返回地址 就可以找到OEP了

最后于 2022-7-1 15:45 被aRax编辑 ,原因:
2022-7-1 15:45
0
雪    币: 264
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
4
脱壳后TP就被剥离,W10可以正常游戏
2022-7-1 15:48
0
雪    币: 122
活跃值: (7471)
能力值: ( LV9,RANK:335 )
在线值:
发帖
回帖
粉丝
5
哥表B牛!
2022-7-1 15:50
0
雪    币: 1475
活跃值: (14652)
能力值: ( LV12,RANK:380 )
在线值:
发帖
回帖
粉丝
6
这就去开服
2022-7-1 16:00
0
雪    币: 665
活跃值: (1051)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
king哥屌炸了!
2022-7-1 17:02
0
雪    币: 2646
活跃值: (1865)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
666666大佬牛逼
2022-7-2 19:04
0
雪    币: 95
活跃值: (1041)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
大佬 github项目地址能发一下吗?
2023-6-16 14:53
0
雪    币: 49
活跃值: (114)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
2023-6-30 19:08
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
11
脱壳后dnf.exe 可以分享下么
2023-11-17 12:03
0
游客
登录 | 注册 方可回帖
返回
//