暴雪和黑客的战争六:Warden和外挂的进化(一)

Warden的机制使得暴雪能够在不需要更新客户端的情况下任意更新作弊检测代码。事实上,自从D2升级到1.11以来,Warden的检测mod和外挂双方一直都在针对对方的改变而进化。这一篇介绍外挂如何躲避前一篇提到的.mod使用的三种检测方法:DLL扫描、进程扫描和窗口扫描。

躲避DLL扫描

前面介绍过,外挂一般是做为一个普通的DLL远程注入到游戏进程进行工作的,因此Warden mod最早的检测手段是搜查游戏进程内加载的特定DLL名称(通过Module32First/Module32Next)。那么如何避免这种检测呢,一种简单的方法是截获Module32First/Module32Next,但由于枚举DLL的方法有多种,Windows 9x平台和NT平台也有区别,这种方法比较麻烦。高级一点的做法是利用进程内加载的所有模块由PEB(进程环境块)结构中的一个模块链表维护这一事实,简单的把外挂模块从链表中断开就可达到隐身的目的,当然这种方法只能用在Windows NT based系统中(包括NT/2K/XP/2K3)。更进一步的做法是自己编写DLL装载代码进行手工加载,这样它不会存在PEB的模块链表中,当然也就不会被Module32First/Module32Next找到。手工加载DLL看起来似乎很难,但其实网上就有现成的源代码,我的Remote Run Library就能做到,我自己最早则是从著名的back door软件Back Orifice 2000中学会的。EasyMap早期的一个版本用的断开模块链表法,后来则用了

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值