游戏工作室

浅谈最近地下城与勇士(DNF)封号的原因

游戏工作室 2014-03-05

我是一名刚刚开始做辅助的程序员,由于玩的最多的游戏是地下城,所以先从这个游戏入手的,想拿来练练手。大概一个半月以前我开始分析游戏数据,找人物,怪物,地图,任务,坐标等等。调试一直很正常然后也写了一部分功能出来注入进去测试。(一真没注意到关于DNF封号方面的问题)

最近开始发现测试用的账号老被封三天,换了好多个QQ号还是不能解决。第一天测试没问题不出现三方,第二天就是封三天,然后我怀疑游戏保护发现了我注入进去的dll模块,之后我花了大概两天时间,做了模块隐藏,但是仍然是注入以后第二天开始封三天,后来经过调试我发现原来辅助在注入模块的时候是要依赖系统提供的dll才可以正常运行,而且和同样做辅助的朋友交流后他告诉我地下城与勇士(DNF)现在有了线程创建的钩子,如此一来,只要辅助使用的是DLL的方式来读写游戏数据,那几乎是肯定会被发现了。

以上是我分析出的最近地下城与勇士(DNF)封号的原因,不一定完全正确,另多开、IP等非模块注入原因导致的不在此列。现在我来说说解决方案,解决方案有两个思路,一个是干掉腾讯TP保护对内核函数NtOpenProcess,NtReadProcessMemory,NtWirteProcess,KeStackAttachProcess的HOOK,然后远程打开游戏读写它的内存,当然我自己是过掉了,目前测试可以。第二个方式不去管它的,HOOK自己写驱动实现读写用户层数据,花了大概两天半时间写了一个,测试是可以的防封号的。

以上这两种方式都是基于对系统驱动层做手脚,不去做注入,我想这样是最完美的解决方式了,思路不知对腾讯,任何游戏都有效否。另外还有个思路是挂钩模块枚举的函数,不过这好像也在驱动层才能做到,我想既然要做的话这方法没大有必要了,做一次不许做的彻底些上面两个方法足够了。

好了说这么多大概意思是告诉DNF工作室的朋友,地下城与勇士(DNF)这个项目市面上估计短时间不会出现稳定的了,极品大牛出品的内部辅助的另说。
如果非得要在DNF这个项目上硬干到底,建议DNF工作室能够找到自己的程序员,出品一些内部辅助,并且是从驱动层读写的辅助,只自己一家用,不对外销售,这样才能最大限度的避免封号。