首页
社区
课程
招聘
6
[原创]游戏保护大放送之梦幻诛仙保护
发表于: 2012-5-7 21:52 20347

[原创]游戏保护大放送之梦幻诛仙保护

2012-5-7 21:52
20347

本人不保证此办法现在还生效!蓝屏死机于本人无关!

完美保护里面有个反调试比较BT,不过多开更bt。(梦幻诛仙为例)

第一,先说一些ssdt hook和inline hook的解决办法,也就是hook Kifastcallentry 来搞。
第二,附加卡死情况的解决。完美驱动会获取FastMutex而不释放,导致卡死情况。
发一小段代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
ULONG ExReleaseFastMutex_addr,ReExReleaseFastMutex_addr;
char g_ExReleaseFastMutex[8];
  
VOID GetExReleaseFastMutexAddr()
{
    ULONG  Address=0;
    ULONG temp_addr;
    char* temp_cr=0;
    Address = (ULONG)_KeServiceDescriptorTable->NotUse1.ServiceTableBase + 269 * 4;        
  
    temp_addr = *(ULONG*)Address;
    temp_addr=temp_addr+0x19A;
    temp_cr=(char*)temp_addr;
    ExReleaseFastMutex_addr=*((ULONG*)&temp_cr[2]);
    ExReleaseFastMutex_addr=*(ULONG*)ExReleaseFastMutex_addr;
  
  
}
VOID __declspec(naked)MyExReleaseFastMutex()
{
    __asm
    {
        cmp        ecx,DbgkpProcessDebugPortMutexaddr
        jnz        ONMYFAST
        mov        ecx,pMyDbgkpProcessDebugPortMutex
ONMYFAST:
        xor     eax, eax
        mov     al, [ecx + 0x1c]
        jmp        [ReExReleaseFastMutex_addr]
  
    }
  
}
  
  
VOID Patch_ExReleaseFastMutex()
{
    KIRQL oldIrql;
    unsigned char newcode[] = { 0xE9, 0x44, 0x33, 0x22, 0x11};
  
    GetExReleaseFastMutexAddr();
  
    ReExReleaseFastMutex_addr=ExReleaseFastMutex_addr+5;
  
    *( (ULONG *)(&newcode[1]) ) =(ULONG)MyExReleaseFastMutex-ExReleaseFastMutex_addr-5;
  
  
    WPOFF();
    oldIrql = KeRaiseIrqlToDpcLevel();
  
    memcpy(g_ExReleaseFastMutex,(VOID*)ExReleaseFastMutex_addr,5);
    memcpy((VOID*)ExReleaseFastMutex_addr,newcode,5);
  
    KeLowerIrql(oldIrql);
    WPON();
  
  
}
  
VOID UnPatch_ExReleaseFastMutex()
{
    KIRQL oldIrql;
      
    WPOFF();
    oldIrql = KeRaiseIrqlToDpcLevel();
  
    memcpy((VOID*)ExReleaseFastMutex_addr,g_ExReleaseFastMutex,5);
  
    KeLowerIrql(oldIrql);
    WPON();
  
  
}

[注意]看雪招聘,专注安全领域的专业人才平台!

收藏
免费 6
支持
分享
赞赏记录
参与人
雪币
留言
时间
伟叔叔
为你点赞~
2024-5-31 04:40
心游尘世外
为你点赞~
2024-5-31 01:22
QinBeast
为你点赞~
2024-5-31 01:09
飘零丶
为你点赞~
2024-3-27 05:14
shinratensei
为你点赞~
2024-1-29 02:46
PLEBFE
为你点赞~
2023-3-7 00:44
最新回复 (21)
雪    币: 2015
活跃值: (902)
能力值: ( LV12,RANK:1000 )
在线值:
发帖
回帖
粉丝
2
楼主好像“反”外挂出身,高手啊!
2012-5-7 22:28
0
雪    币: 1689
活跃值: (379)
能力值: ( LV15,RANK:440 )
在线值:
发帖
回帖
粉丝
3
上这么多代码,不如上个附件呢,估计没人会在这里仔细看。
2012-5-7 22:44
0
雪    币: 38
活跃值: (581)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
4
天易大大抬爱。要想防就必须学会攻,攻防是相互的。
2012-5-7 22:44
0
雪    币: 1015
活跃值: (235)
能力值: ( LV12,RANK:440 )
在线值:
发帖
回帖
粉丝
5
留名,顶楼主。
2012-5-7 22:45
0
雪    币: 120
活跃值: (160)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
强大。。。。。
2012-5-7 22:47
0
雪    币: 38
活跃值: (581)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
只做技术交流,这和附加没有什么区别了,如果直接上附加怕别有用心的人利用,望谅解。
2012-5-7 22:53
0
雪    币: 303
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
复制回去慢慢看。。谢谢LZ。。。。
2012-5-7 23:16
0
雪    币: 8169
活跃值: (5360)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
复制,粘贴,保存,然后妹妹就喜欢了
2012-5-8 01:18
0
雪    币: 123
活跃值: (50)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
站位,留名,学习,感谢!
2012-5-8 08:16
0
雪    币: 62
活跃值: (107)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
11
必须学习,必须膜拜
2012-5-8 10:02
0
雪    币: 345
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
此方法早已经过去式
2012-5-8 11:15
0
雪    币: 248
活跃值: (123)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
强帖 留名MARK
2012-5-8 11:20
0
雪    币: 114
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
没啥技术含量,能过驱动保护又能怎么样,我去游戏公司面试游戏安全人家照样不鸟你.
2012-5-8 21:02
0
雪    币: 114
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
楼主如果任职了某个游戏公司的游戏安全,来报个喜啊,干脆把我也招去吧,反正你会的我也都会.组个团队,轻松点.
2012-5-8 21:07
0
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
强帖 留名MARK
2012-5-8 22:17
0
雪    币: 34
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
pass完美的驱动保护,这个貌似是第一个,
感谢分享
2012-5-9 00:50
0
雪    币: 219
活跃值: (878)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
18
MARKMARK
2012-5-9 06:57
0
雪    币: 122
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
你有能耐 别 喊人家啊,把自己 看的这么 低下,不是 想说明 LZ 和你 一样撒,呵呵,除了技术 还需要一点的RP + 运气的
2012-5-9 18:06
0
雪    币: 50
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
最好搞个视频教程,这样很有说服力的。
2012-5-10 12:35
0
雪    币: 295
活跃值: (323)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
xjj
21
IDT部分,,没处理多核。

无多大价值的代码堆。

会者自会,,不会的人,你的代码也没多大帮助,思路就不好,,

现在玩的是技术层绕过,,不是对抗!
现在玩的是通杀,而不是频繁更新!

不过得感谢楼主的共享精神,,毕竟对某些人会有些启发~
2012-5-10 13:28
0
雪    币: 103
活跃值: (66)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
全是硬编码。不厚道
2012-6-25 16:14
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册