当前位置:   article > 正文

简单谈下 怎么避免游戏检测非法调用call _call被检测

call被检测

一般情况下 按照以下处理方式就可以避免了

 

例如 龙OL  这样处理就不会被检测到非法调用call了

 

 

 

在游戏地址空间找到一处空位置  写入如下机器码

 

004014D9      58                 pop eax                                   ;  弹出返回地址

004014DA      A3 E8144000        mov dword ptr ds:[4014E8],eax       ;  保存返回地址

004014DF      58                 pop eax                                   ;  弹出选怪call地址

004014E0      FFD0               call eax                                 ; 在游戏空间内调用了选怪call

004014E2    - FF25 E8144000      jmp dword ptr ds:[4014E8]           ;  返回调用处

004014E8      90                 nop                                       ;  004014E8下面4个字节用来保存返回地址

004014E9      90                 nop

004014EA      90                 nop

004014EB      90                 nop

004014EC      90                 nop

004014ED      90                 nop

004014EE      90                 nop

 

 

 

 

 

 

下来我们看看 怎么调用他 (004014D9)      

 

004014D4      90                 nop

004014D5      C2 0400            ret 4                                    ;  比如这里是有一个参数的选怪call    所以是 ret 4

004014D8      90                 nop

 

 

 

push 1                                                              ;压入选怪参数 

push Spy4Win.004014D5                    ; 压入选怪call地址  比如这个地址是选怪call

mov eax,Spy4Win.004014D9                 ;  这里是我们在exe地址空间内找到的可用地址

call eax

 

 

这样 到选怪call以后  调用选怪call的就是游戏自己了 

 

 

 

 

 

 

 

 

 

另外还有一种检测方式就是游戏检测是否是游戏窗口主线程在调用游戏的call

 

这种方式就通过hook游戏窗口过程  也就是窗口子类化

 

子类化以后通过发送自定义消息给游戏窗口来实现在游戏窗口主线程中调用游戏call

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/331949
推荐阅读
  

闽ICP备14008679号