Board logo

标题: [讨论] 用户层过游戏反挂保护的可行性 [打印本页]

作者: dayu003    时间: 2011-4-17 17:46     标题: 用户层过游戏反挂保护的可行性

我们以就上魔力私服为例,改私服通过hook ssdt来保护游戏进程,其中被hook的内核函数有四个ntOpenProcess,ntWriteVirtualMemory,ntReadVirtualMemory,ntCreatThread。当然其用户空间也inline hook了几个函数我们先不讨论,我们讨论分析一下在用户空间过掉内核层保护的可行性。魔力私服,最新魔力宝贝私服技术交流* [8 j2 j/ P! j: r& \+ t
  假定使用的是INTEL cpu并且是xp sp3系统,我们都知道用户空间的函数通过调用NTDLL.DLL导出的中介函数来进行fastsystemcall来进入内核,也就是从R3进入R0。以ntOpenProcess为例,其系统调用号为7A,通常用户空间函数Openprocess通过调用系统描述符表的第7A*4项来实现其功能,也就是ntOpenProcess。我来来看一下NTDLL.DLL中的中介函数ntOpenprocess代码:
; Y* ?0 h. w3 x魔力私服,最新魔力宝贝私服技术交流(使用工具W32asm)魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表- U7 V# _2 d& Y  W1 @6 |
:7C92D5FE  mov eax,0000007A—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート) |) x4 [  P. i' q5 M' ^
...魔力私服,最新魔力私服,魔力宝贝私服,魔力宝贝私服技术,魔力宝贝私服,私服架设技术,妖城,FLASH,电影,黑客,网络,网吧,破解,入侵,注册表2 X4 Y1 N7 O- }3 ]
...—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート# {4 r; }0 g9 ^" X$ |
可以看到函数入口处的第一行代码就是将系统调用号赋值给eax寄存器,如果我们将这个调用号改变呢?当然还牵涉到参数的个数问题,如果我们找到一个和ntOpenProcess参数一样的函数呢?(本人还没有去找,ntoskel有几百个导出函数,总会有好多一样的吧)这种方法是不是可以绕过游戏保护呢?# C* P* @* I' C/ D* \7 M
ps:只讨论用户层实现方法,内核的方法太多就不讨论了吧
作者: dayu003    时间: 2011-4-17 18:00

刚才突然想到的问题没来的及细想:(
2 J3 I( ^5 {# }; j6 O9 w—魔力私服,魔力宝贝私服技术,DELPHI编程,魔力寶貝, 魔力宝贝, 크로스게이트,クロスゲート即使这样也离不开驱动程序配合的,还是要去扩充SSDT或者hook调用号对应的内核函数,看来用户层还是不行




欢迎光临 妖城在线论坛 (http://bbs.mocwww.com/) Powered by Discuz! 6.0.0