首页
社区
课程
招聘
GalaxyAP过游戏反调试框架
发表于: 2011-11-6 20:19 91389

GalaxyAP过游戏反调试框架

2011-11-6 20:19
91389

这个工程我以前用来在XP上跑过DNF,DN,只为好玩目的,还没写过外挂。
声明:用这套代码干了什么坏事与我无关

BypassAntiDebug.rar
工程说明:
1.GalaxyAP        应用程序
2。HookPortBypass        重加载内核(包括nt和win32k)
3。TEST_KIDISPAT        自分发异常(朋友帮忙实现了部分,代码主要来源WRK)

ps:hookport代码抄网上的,来源http://www.m5home.com/bbs/forum.php

这套GalaxyAP工程主要实现了:
1。重加载内核(借助 hookport思路配合peloader)
2.自实现异常分发的几个主要函数
3。自创建debugobject,使用另一个object
3。也使用了另一个fastmute
4。自己发现吧。。。

PS:驱动的加载有时候在游戏前好使有时候在启动游戏后好使
PPS:这货也只能在XP上跑了

实现了HOOK框架,只需要按下面填写即可
//////////////////////////////////////////////
//这是为了HOOK原来的ntos,转到新的os中
VOID (WINAPI *DUMMYFUCK )(IN  PVOID   Object);
// VOID (WINAPI *PspUserThreadStartup )(IN  PVOID   Object);
// VOID (WINAPI *PspSystemThreadStartup )(IN  PVOID   Object);

HX_DYNC_FUNCTION dync_Old2New[]={
                        DECL_DYNCFUN_HOOK_Old2New(PspUserThreadStartup),
                                DECL_DYNCFUN_HOOK_Old2New(PspSystemThreadStartup),
                                DECL_DYNCFUN_HOOK_Old2New(ObCloseHandle),
                                DECL_DYNCFUN_HOOK_Old2New(PspProcessDelete),
                                DECL_DYNCFUN_HOOK_Old2New(pIofCallDriver),
                                DECL_DYNCFUN_HOOK_Old2New(KiTrap03),
                                DECL_DYNCFUN_HOOK_Old2New(ObpCreateHandle),        //为了跳过ObCheckObjectAccess
/*
                                kd> dps nt!pIofCallDriver l8
                                8054c400  804eedc8 nt!IopfCallDriver                //就搞这个。归类到fengyue驱动去       
                                8054c404  804f12c0 nt!IopfCompleteRequest
                                8054c408  804f0a00 nt!IopAllocateIrpPrivate
                                8054c40c  804ef0e6 nt!IopFreeIrp
                                8054c410  00000000
8054c414  00000000
*/
        //        DECL_DYNCFUN_HOOK_Old2New(KeStackAttachProcess),
        //        DECL_DYNCFUN_HOOK_Old2New(KeAttachProcess),
               
                };

//这个需要另外HOOK的函数 ,old os 中的,把这些不经过hookport的转到自己的实现中
HX_DYNC_FUNCTION dync_funs_hook[]={
                                DECL_DYNCFUN_HOOK(DbgkCreateThread),
                                DECL_DYNCFUN_HOOK(DbgkExitThread),
                                DECL_DYNCFUN_HOOK(DbgkExitProcess),
                                DECL_DYNCFUN_HOOK(DbgkMapViewOfSection),
                                DECL_DYNCFUN_HOOK(DbgkpMarkProcessPeb),

        //        DECL_DYNCFUN_HOOK(NtCreateDebugObject),
                DECL_DYNCFUN_HOOK(DbgkForwardException),

//                DECL_DYNCFUN_HOOK(KiDispatchException),               
                //使用强大的特征码直接patch KiDispatchException中比较debugport部分
                //s -b 804d8000 806ce100 64 A1 24 01 00 00 8B 40  44 39 B8 BC 00 00 00
                };
//这是实现自己分发函数需要用到的
HX_DYNC_FUNCTION dync_funs[]={
                DECL_DYNCFUN(KeUserExceptionDispatcher),
                DECL_DYNCFUN(KeI386XMMIPresent),
                DECL_DYNCFUN(PsImageNotifyEnabled),
                DECL_DYNCFUN(PsNtDllPathName),
                DECL_DYNCFUN(KeFeatureBits),
                DECL_DYNCFUN(PsSystemDllBase),
                DECL_DYNCFUN(PsGetNextProcess),
                DECL_DYNCFUN(PsGetNextProcessThread),


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

上传的附件:
收藏
免费 6
支持
分享
最新回复 (72)
雪    币: 89
活跃值: (53)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
坐等帖子的后续操作,沙发~
2011-11-6 20:43
0
雪    币: 5
活跃值: (1131)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
楼主不错,里面有卡巴的代码,还能看到wrk的代码 ,还有360的zwsetevent,嘿嘿。tp,gpk 能过。pp过不了。NP算是过了一半。
2011-11-6 20:51
0
雪    币: 729
活跃值: (1195)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
好东西哦,谢谢分享
2011-11-6 20:54
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
好东西。MARK
希望115别过期。
2011-11-6 20:58
0
雪    币: 46
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
强大~~
2011-11-6 21:34
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
7
基本上还是hookport+rebuildKernel+DbgPortDiy~
接下来就是VMX+pagehidehook了~
2011-11-6 21:47
0
雪    币: 3116
活跃值: (1269)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
8
嗯,loader是抄kav的,哈。

现在只想思路,代码就不想一行一行的敲了
2011-11-6 22:04
0
雪    币: 3116
活跃值: (1269)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
9
后面是你表演的时间了。
2011-11-6 22:07
0
雪    币: 5
活跃值: (1131)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
VMX+pagehidehook ? hook pagefault?  是想隐藏内存吗? 我现在正也在做一个hvm东西,以前有人提过,类似阿瓦隆,和V的AntiGameProtect3.0。
2011-11-6 22:14
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
11
其实windbg支持才是王道~因为OD这玩意的断点和附加逻辑上有巨大无比的bug——囧囧,反正AGP的以后的更新方向基本上是提供windbg的调试支持了~
2011-11-7 10:22
0
雪    币: 3116
活跃值: (1269)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
12
windbg用得挺爽,如果单步时候的asm窗口能和OD那样就好了,再改善下字符串条件断点,那就很有爱了
2011-11-7 10:39
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
13
主要是支持IDA+Remote Windbg的模式~你懂得~
2011-11-7 11:02
0
雪    币: 3116
活跃值: (1269)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
14
三大神器合体,求内测啊。。
2011-11-7 11:07
0
雪    币: 8835
活跃值: (2404)
能力值: ( LV12,RANK:760 )
在线值:
发帖
回帖
粉丝
15
没弄好~预计明年春节以后开始开发AGP2012版,也是AGP的最后一版~
2011-11-7 11:11
0
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
牛逼的AGP
2011-11-7 12:26
0
雪    币: 827
活跃值: (385)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
求科普,什么是AGP,百度无果
2011-11-7 13:06
0
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
Anti-Game-Protector, 用来反游戏的驱动保护
2011-11-7 14:41
0
雪    币: 410
活跃值: (214)
能力值: ( LV13,RANK:220 )
在线值:
发帖
回帖
粉丝
19
内核线程+pipe+线程处理+抹掉一些列标志+开机自启动----》驱动模块已无隐无踪。
2011-11-7 15:47
0
雪    币: 349
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
合体威武啊。。。。。。
2011-11-10 23:50
0
雪    币: 27
活跃值: (127)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
21
V校威武啊,我永远的偶像
2011-11-11 00:03
0
雪    币: 603
活跃值: (40)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
22
围观一下。。。。。。。。。。。。。。
2011-11-11 10:36
0
雪    币: 970
活跃值: (1264)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
好贴留名,围观
2011-11-11 20:41
0
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
好东西

要顶
2011-11-12 00:19
0
雪    币: 160
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
坐等V大的精华
2011-11-12 10:44
0
游客
登录 | 注册 方可回帖
返回
//