首页
社区
课程
招聘
[讨论][求助]某游戏的变态R3级保护....我TM没辙了,求助攻
发表于: 2017-6-3 03:05 14127

[讨论][求助]某游戏的变态R3级保护....我TM没辙了,求助攻

2017-6-3 03:05
14127

1.程序有N处CRC效验 主程序一份,NTDLL一份...其他还有 每一份代码都是不同的
2.CRC有另一份CRC检查 防止CRC代码被修改,每一分CRC效验都有一份CRC效验
3.CRC效验代码在游戏从选择角色到进入游戏中间动态生成并执行
4.CRC代码有未知的加密手段,表现为有大量的花指令和Jmp,由于是动态生成的 每次的地址都不一样,且是一块独立的内存区域所以不知道要如何将花指令和jmp去壳
5.疑似CRC的代码中会调用ZwReadVirtualMemory(该函数被CRC代码保护,无法修改)

6.CRC代码所在的内存区域会检查硬件执行,读取断点,发现就会清空所有寄存器。(使用的什么手段目前未知,已经测试排除了NtGetContextThread,SEH,VEH)


目前面临的问题优先级应该是

1.如何去除动态生成,随机地址代码的加密壳(由于去除了也会因为CRC自身效验导致无法执行,所以只能去除后设法让IDA识别即可)

2.检测硬件断点的究竟是如何做到的,想办法解决(这样才能给CRC代码本身下读取断点,定位读取CRC的CRC)

3.想办法定位到CRC检查CRC的代码的关键点进行爆破(这样才能hook crc代码,从而实现可以hook游戏主模块代码)

求助攻....艹 我没辙了 

游戏是某传奇私服.....


额....好变态 - -  呵呵呵呵呵呵呵呵呵呵


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (26)
雪    币: 90
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
我是手动过crc的。
2017-6-3 03:12
0
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
3
黄小付 我是手动过crc的。
手动过是啥意思...
2017-6-3 03:17
0
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
黄小付 我是手动过crc的。
如果说是通过各种断点,断下后修改读取值的话倒是可以过,但是无法作为程序发布,更无法超过4个HOOK
2017-6-3 03:18
0
雪    币: 130
活跃值: (1005)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我也遇到个,检查一切软件安全程序  ,如Xuetr这些有驱动防护都检查
V大神的AGP一加载驱动立马查出。而它只是个无驱动的程序
2017-6-3 07:33
0
雪    币: 2347
活跃值: (58)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
无通信的话直接ret掉吧
2017-6-3 10:25
0
雪    币: 5270
活跃值: (3505)
能力值: ( LV7,RANK:117 )
在线值:
发帖
回帖
粉丝
7
对于CRC  可以使用备份法绕过  具体方法如下
1.先申请一块内存  把没修改的内存备份出来
2.找到crc头部(如果是动态的话,需要搜索定位),hook
3.判断指针是否在你修改的地址范围内,如果在就修改指针,指向备份的地方,否则忽略
2017-6-3 13:21
1
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
8
鬼才zxy 对于CRC 可以使用备份法绕过 具体方法如下 1.先申请一块内存 把没修改的内存备份出来 2.找到crc头部(如果是动态的话,需要搜索定位),hook 3.判断指针是否在你修改的地址范围内,如果 ...
这种做过  做过了之后才发现  CRC有另一份CRC进行自保护  所以想要HOOK  就要干掉第二个CRC
2017-6-3 16:47
0
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
9
空白即是正义 无通信的话直接ret掉吧
有通信  -  -    蛋疼
2017-6-3 16:48
0
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
10
哇咔咔zs 我也遇到个,检查一切软件安全程序 ,如Xuetr这些有驱动防护都检查 V大神的AGP一加载驱动立马查出。而它只是个无驱动的程序
你这种相对好解决多了  -  -    我这个可就蛋疼了
2017-6-3 16:50
0
雪    币: 23
活跃值: (1486)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
可以分析动态代码里的        待校验地址来源
2017-6-3 17:08
0
雪    币: 1022
活跃值: (31)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
12
找到CRC头部用于计算正确的CRC,  HOOK的时候多写入4个字节作为校正值,保证HOOK后的数据与HOOK前的数据CRC相同即可。
2017-6-3 17:09
0
雪    币: 5270
活跃值: (3505)
能力值: ( LV7,RANK:117 )
在线值:
发帖
回帖
粉丝
13
机械瞑衍 这种做过 做过了之后才发现 CRC有另一份CRC进行自保护 所以想要HOOK 就要干掉第二个CRC
对啊,只要修改的地方都要做备份的。(两段crc也要做备份的)
只要指针指到了修改的地方,就改成指到相应备份的地方。
2017-6-3 17:09
0
雪    币: 130
活跃值: (1005)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
机械瞑衍 你这种相对好解决多了 - - 我这个可就蛋疼了
好解决在哪讲起
求方法
2017-6-3 19:39
0
雪    币: 3681
活跃值: (4856)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
哪个私服的?发出来看看?                                         
2017-6-3 22:21
0
雪    币: 130
活跃值: (1005)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
神捕搞定了~~LZ这个是什么  可否给来一看?
2017-6-9 00:22
0
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
17
哇咔咔zs 神捕搞定了~~LZ这个是什么 可否给来一看?
不是神捕    是GOM的检测
2017-6-18 12:26
0
雪    币: 319
活跃值: (2676)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
syser 哪个私服的? 发出来看看? 神捕???
哇,神捕作者现身
2017-6-20 02:49
0
雪    币: 3681
活跃值: (4856)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
samshine 哇,神捕作者现身
...  不是啊  我只是搞过  所以感觉流程有点像  你是?
2017-6-22 15:42
0
雪    币: 3681
活跃值: (4856)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
机械瞑衍 不是神捕 是GOM的检测
发出来看看呗 
2017-6-22 15:51
0
雪    币: 457
活跃值: (218)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
21
syser 发出来看看呗
http://www.jpcq176.com/    另外  我已经搞定了  他有一个壳保护
2017-6-22 17:41
0
雪    币: 164
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
22
@机械瞑衍  合作下合击版本的检测吧我的qq是85862121这个检测也折磨我很久了
2017-8-23 21:39
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
23
机械瞑衍 http://www.jpcq176.com/ 另外 我已经搞定了 他有一个壳保护
能分享下经验吗,只求思路,我最近也被某私服搞得不要不要的
2023-3-6 15:09
0
雪    币: 8
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
24
我不明白你为什么要处理crc
2023-3-6 15:45
0
雪    币: 1657
活跃值: (4753)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
25
硬件断点,可以hook他的获取线程上下文函数
2023-3-14 16:19
0
游客
登录 | 注册 方可回帖
返回
//