外挂制作入门之封包解密

外挂制作入门之封包解密灌篮高手(NBA2k9版)~绝对倾情制作!~~不看可惜!~~熟悉的街头篮球警告~不要发外挂的东西否则~~~~~~~~4月6号。测试可用外挂~~~~~~~~~~!~~!~!~!~~!~~!~!!~~!最新街头篮球外挂经过42款杀毒软件测试~~~~~~~~~~~~~~!!!今日可用外挂~~~~~~~带图测试发贴太少,居然还是新手。。。汗。。我从2000开始制作外挂,这些年也写过几个商业外挂。仍然穷得一塌糊涂,可能是水平不够吧。在我决定洗手不干的时候,朋友让我写点东西。但是天生就很懒,后天又没有改造得好,写到哪里算哪里吧。论坛上的老鸟们应该都是潜水的多吧。大家都不说,呵呵,我来。经验之谈,欢迎讨论。一、必备知识外挂制作牵涉的知识面比较广,大体说来需要如下的知识:1、汇编语言。这可能是入门的时候比较难过的一关。要能读懂汇编语言,这个并不太容易,如果你是在校的学生,那么可能会相对容易点。读汇编语言的时候,单行代码是很容易懂的,反汇编出来的都是助记符,如Mov,Add,Push,Pop等等,但是要读懂这些代码组成的序列却并不容易,需要长期的积累,对一些特殊用途的代码更是如此(例如PE加壳的代码)。回想我本人的入门经历(以前制作外挂,不像现在能找到一些DEMO),读懂汇编代码首先从堆栈入手,应该是比较快的。WINDOWS下的函数调用基本上都是stdcall调用约定(少数API也使用C调用约定),对外挂制作者来说,这种约定意味着两点:1)、参数使用堆栈传递。就是常见的PushEbpMovEbp,EspSubEsp,XXh对不同的编译器,这里的构造可能不同,如VC通常用ECX传递对象指针,而Delphi是用EAX2)、堆栈平衡由被调用的函数负责。一个函数的返回代码通常是retnXXh,这就是修正堆栈如果熟悉之后就能从这些特征大概估算函数使用的参数个数,结合少两代码可判断参数的类型。2、调试调试包含了两个方面的内容:调试自己的程序和跟踪游戏的代码。你可以使用常见的调试工具,WIN2K推荐使用OD和SICE,WIN98推荐使用TRW2000。可能会有人认为调试自己的代码会很简单,不值一提,但是,以我本人的经验,写外挂通常都式由一个人来完成,多人反而弊大于利,这也是我比较困惑的地方。外挂代码往往对逻辑性的要求较高,要看懂别人的外挂代码并不容易,至少我认为是这样,这种情况下,我一般会选择使用代码中的必须部分,而程序的逻辑则自己重新组织。另外,由于编译器本身的BUG或者写代码时的疏忽,随着代码量的增加往往会导致崩溃,要写出稳定的、兼容各种CPU和操作系统平台的外挂代码,除了了解操作系统之外,调试技巧也很重要。在很多游戏的代码里我们经常能看到用OutDebugString的调试信息输出,尽管这可能导致被破解的可能性增加,但是不可否认这是个好的习惯,在外挂制作的过程中也可以使用这种方式,但在要分Debug版本和Release版本。也许你有更好的解决方式,呵呵,这里的主要目的是提醒你注意而已。跟踪游戏的代码。这可能是写外挂的过程中使用最多的一种手段。当然,首先你要能读懂ASM代码,并且需要你绕过游戏中的反跟踪技巧。跟踪的目的,一般是获取游戏中某段代码的关键信息,如加密和解密算法。至于其他的目的,由于不具备共同点,很难描述,就不谈了,这里讲一下如何调试游戏的加密和解密算法:游戏的加密和解密通常是在send函数的前面,看个例子:在IDA中是这样:BRAT0:0046EEA0SendACommandprocnear;CODEXREF:SendCommandBC3+40pBRAT0:0046EEA0BRAT0:0046EEA0PointerToCmd=dwordptr4BRAT0:0046EEA0DataBuf=dwordptr8BRAT0:0046EEA0BRAT0:0046EEA0moveax,[esp+PointerToCmd]BRAT0:0046EEA4pushebxBRAT0:0046EEA5pushesiBRAT0:0046EEA6movesi,ecxBRAT0:0046EEA8pushediBRAT0:0046EEA9push20h;SizeOutBufBRAT0:0046EEABleaedi,[esi+24h]BRAT0:0046EEAEpushedi;outBufBRAT0:0046EEAFpusheax;PointerToCmdBRAT0:0046EEB0callEncodeCMDBRAT0:0046EEB5moveax,[esi+14h]BRAT0:0046EEB8cmpeax,9BRAT0:0046EEBBjlshortloc_0_46EEC6BRAT0:0046EEBDmovdwordptr[esi+14h],1BRAT0:0046EEC4jmpshortloc_0_46EECABRAT0:0046EEC6BRAT0:0046EEC6loc_0_46EEC6:;CODEXREF:SendACommand+1BjBRAT0:0046EEC6inceaxBRA...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?