脱机外挂制作完全版制作原理与实现技术十.docx

脱机外挂制作完全版制作原理与实现技术十.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
脱机外挂制作完全版制作原理与实现技术十

脱机外挂制作完全版制作原理与实现技术十脱机外挂制作完全版(制作原理与实现技术)字体小中大打印发表于 2007-10-30 1309 作者恶魔天尊外挂海社区一、游戏封包的加密与解密算法的破解  破解封包的加密与解密算法是制作外挂的第一步是外挂制作中最具技术含量的步骤同样也是一个十分令人头痛的环节。如果加密与解密算法被成功地破解那么外挂制作也就完成了一半。破解封包的加密与解密算法的行为同样属于黑客们其中之一的行为因此我们可以在黑客站里找到相应的资料另外络上也有专门的破解站为大家提信息。  在破解封包的加密与解密算法之前我们首先需要知道一些情况。我们知道随着机器性能的提高与络带宽的提升新的游戏运行商对游戏封包的加密与解密算法的设计变得越来复杂。那种原先通过分析封包数据就可以得出加密与解密算法的时代已经变成了过去。现在如果再要破解一个游戏的封包的加密与解密算法那么其必须通过分析程序源代码才能清楚。  1.1 封包的概念 本文所讲的封包是指由sockets协议进行发送与接收的数据包。广义的封包是指计算机之间互相进行通信的数据包其可以因通信协议的不同而在内容上有所不同。  1.2 破解原理 目前破解封包加密与解密算法的方法主要是通过动态调试技术来实现的。其原理是首先通过动态调试跟踪并取出加密与解密算法的代码段然后再通过分析这些代码最终得出结论。那为什么我们可以跟踪并取得这些代码呢?首先我们知道无论游戏程序如何设计其加密与解密算法的代码永远存在于程序中;其次我们知道在程序流的执行过程中加密与解密算法的代码段一定会被执行。  1.3 破解需要具备的知识 要能顺利进行破解则必须具备一定的知识一是熟练掌握汇编原理与汇编语言二是要熟悉加壳与脱壳原理(虽然很多游戏不需要)三是要熟悉代码结构的知识四是要熟悉动态调试技术与调试工具的使用五是具有高级语言知识与较高的编程修为。  1.4 破解的技术与方法 动态调试工具我们可以采用OllyDbg工具或其他工具不熟悉OllyDbg工具的可以查看它的中文帮助。动态调试主要是跟踪代码的执行而我们查找加密与解密代码段就是一个跟踪的过程。一般跟踪的起点可以是windows消息、socket中的send与recv等函数。有时程序有可能将发送与接收过程由一个专门的线程进行处理那么这种情况下我们需要找出该处理线程。至于具体如何进行跟踪本文不再进行详述具体内容可以到相关站上查看比如看雪学院、笨冬瓜等站。这里主要讲一下加密与解密算法代码的特征。  1.5 加密与解密算法代码特征 虽然在未进行分析之前我们很难判断一段代码是否是加密或解密算法但我们还是可以根据一些特征进行较大概率的猜测。一情况下加密与解密都要进行一系列的异或、移位、加减、乘除和重复运算过程因些一段代码中若具有上述特征我们可以进行较为肯定的断定。  1.6 代码反推导 代码反推导是进行破解算法的主要方法代码反推导的水平主要与一个人自身的编程修为相关但在这里仍有一些基本的方法。代码反推导可以有一定的程式首先可以将汇编码写成三表达码其次将代码中的转移指令转换为条件语句或循环语句再次将代码中的变量进行迭代最后进行变量形式转换与语句形式转换。通过以上的步骤一般我们可以将汇编语言转换为高级语言而当我们推导出高级语言后就能进行较为实义的分析。二、游戏指令与数据结构的筛查游戏指令和指令中所携带的数据结构的筛查是外挂制作的第二步这一步并不是很难但十分烦锁。游戏指令和其数据结构的筛查并无技巧可言主要是通过多次重复比较数据而最终确定结果。  在筛查游戏指令和其数据结构之前我们需要对封包截获技术有所了解同时能对当前流行的几款封包截获工具如FE、WE等有所熟练使用。然而由于某些游戏运行商会针对一些问题而制定相应对策因此有些时候需要我们自己编写封包截获工具。自己编写封包截获工具的好处还在于可以具体针对某一款游戏而编制特定的工具这之中最重要的是可以事先将加密数据解密成明码为分析封包提方便。  2.1 封包截获技术 根据具体的截获原理不同封包截获技术可分为:一是Hook技术、一是socket重写技术。无论使用何种截获技术我们最终要跟踪的都是socket中的发送函数与接收函数如send、recv等。  2.1.1 Hook原理 Hook原理是通过向应用程序中注入dll文件并改写应用程序函数导入表中的DLL调用函数Hook技术要求我们对可执行程序的文件即E文件结构有所了解。  2.1.2 socket重写原理 socket重写原理是通过重写整个socket文件用新写的socket文件代替原socket文件并由新socket文件调用原socket文件中的函数从而截获函数的调用过程。socket重写技术要求改写后的socket文件具有跟原socket文件相同的接口否则程序调用将发生错误。  2.2 

文档评论(0)

shenlan118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档