⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 外挂制作全过程.txt

📁 教程外挂教程 找来的 找来的还不够20字我晕
💻 TXT
📖 第 1 页 / 共 4 页
字号:
 
 
 外挂制作全过程

一:什么叫外挂?

现在的网络游戏多是基于Internet上客户/服务器模式,服务端程序运行在游戏服务器
上,游戏的设计者在其中创造一个庞大的游戏空间,各地的玩家可以通过运行客户端程
序同时登录到游戏中。简单地说,网络游戏实际上就是由游戏开发商提供一个游戏环境
,而玩家们就是在这个环境中相对自由和开放地进行游戏操作。那么既然在网络游戏中
有了服务器这个概念,我们以前传统的修改游戏方法就显得无能为力了。记得我们在单
机版的游戏中,随心所欲地通过内存搜索来修改角色的各种属性,这在网络游戏中就没
有任何用处了。因为我们在网络游戏中所扮演角色的各种属性及各种重要资料都存放在
服务器上,在我们自己机器上(客户端)只是显示角色的状态,所以通过修改客户端内
存里有关角色的各种属性是不切实际的。那么是否我们就没有办法在网络游戏中达到我
们修改的目的?回答是"否"。我们知道Internet客户/服务器模式的通讯一般采用TCP/I
P通信协议,数据交换是通过IP数据包的传输来实现的,一般来说我们客户端向服务器发
出某些请求,比如移动、战斗等指令都是通过封包的形式和服务器交换数据。那么我们
把本地发出消息称为SEND,意思就是发送数据,服务器收到我们SEND的消息后,会按照
既定的程序把有关的信息反馈给客户端,比如,移动的坐标,战斗的类型。那么我们把
客户端收到服务器发来的有关消息称为RECV。知道了这个道理,接下来我们要做的工作
就是分析客户端和服务器之间往来的数据(也就是封包),这样我们就可以提取到对我
们有用的数据进行修改,然后模拟服务器发给客户端,或者模拟客户端发送给服务器,
这样就可以实现我们修改游戏的目的了。 目前除了修改游戏封包来实现修改游戏的目的
,我们也可以修改客户端的有关程序来达到我们的要求。我们知道目前各个服务器的运
算能力是有限的,特别在游戏中,游戏服务器要计算游戏中所有玩家的状况几乎是不可
能的,所以有一些运算还是要依靠我们客户端来完成,这样又给了我们修改游戏提供了
一些便利。比如我们可以通过将客户端程序脱壳来发现一些程序的判断分支,通过跟踪
调试我们可以把一些对我们不利的判断去掉,以此来满足我们修改游戏的需求。 在下几
个章节中,我们将给大家讲述封包的概念,和修改跟踪客户端的有关知识。大家准备好
了吗? 
二:什么是封包? 


怎么截获一个游戏的封包? 怎么去检查游戏服务器的ip地址和端口号?

Internet用户使用的各种信息服务,其通讯的信息最终均可以归结为以IP包为单位的信
息传送,IP包除了包括要传送的数据信息外,还包含有信息要发送到的目的IP地址、信
息发送的源IP地址、以及一些相关的控制信息。当一台路由器收到一个IP数据包时,它
将根据数据包中的目的IP地址项查找路由表,根据查找的结果将此IP数据包送往对应端
口。下一台IP路由器收到此数据包后继续转发,直至发到目的地。路由器之间可以通过
路由协议来进行路由信息的交换,从而更新路由表。

那么我们所关心的内容只是IP包中的数据信息,我们可以使用许多监听网络的工具来截
获客户端与服务器之间的交换数据,下面就向你介绍其中的一种工具:WPE。

WPE使用方法: 执行WPE会有下列几项功能可选择: 

SELECT GAME 选择目前在记忆体中您想拦截的程式,您只需双击该程式名称即可。

TRACE 追踪功能。用来追踪撷取程式送收的封包。 WPE必须先完成点选欲追踪的程式名
称,才可以使用此项目。 按下Play键开始撷取程式收送的封包。 您可以随时按下 | | 
暂停追踪,想继续时请再按下 | | 。 按下正方形可以停止撷取封包并且显示所有已撷
取封包内容。 若您没按下正方形停止键,追踪的动作将依照OPTION里的设定值自动停止
。 如果您没有撷取到资料,试试将OPTION里调整为Winsock Version 2。 WPE 及 
Trainers 是设定在显示至少16 bits 颜色下才可执行。

FILTER 过滤功能。用来分析所撷取到的封包,并且予以修改。

SEND PACKET 送出封包功能。能够让您送出假造的封包。

TRAINER MAKER 制作修改器。

OPTIONS 设定功能。让您调整WPE的一些设定值。
关于封包解密,加密 算法的一点东西
  



封包的解密加密,最简单的方法就是
异或 XOR 运算! 估计不是在服务器端,就是在客户端产生 私钥! 还有可能游戏一个
共钥
2次加密一个私钥,要加密的私钥在去加密和解密数据! 

 

就是说每次进入游戏的时候同样的操作都会产生不同数据!

比如说:
  你要对AAAAAAAAAAAAA 进行加密 你的密钥是this is hack
   
  加密后生成为 5)(2a(2a) "*5
而你产生的数据就!也就是说有些游戏为什么同样的数据都不一样
  如果你有耐心,可以在游戏中反复拦截send数据,因为你已经知道明文和密文

  明文 = 你发送的话
  密文 = 你拦截的数据风暴
  
  多比较,要是游戏采用共用的加密算法的话,就可以解开数据了

  如果知道明文 和 密文 ,那私钥就肯定能破解了

知道了加密的方式就可以把自己的数据随意的发送到服务器了!


常用的加密算法

Blowfish http://www.counterpane.com/blowfish.html
DES Data Encryption Standard http://csrc.nist.gov/fips/fips46-3.pdf
EncryptGost http://www.jetico.sci.fi/index.htm#/gost.htm
EncryptXOR http://tuath.pair.com/docs/xorencrypt.html
EncryptRC4 http://www.rsasecurity.com/rsalabs/faq/3-6-3.html
EncryptSkipJack http://csrc.nist.gov/encryption/skipjack-kea.htm
EncryptTEA TEA, A Tiny Encryption Algorithm http://www.cl.cam.ac.uk/Researc
h/Papers/djw-rmn/djw-rmn-tea.html
Twofish http://www.counterpane.com/twofish.html


其他的还有什么凯撒加密什么。。。。在大学的时候都应该学的到
WPE实际经验和实例
1.虎卫版的破解 2.WPE系列教程之封包用法篇 
3.WPE系列教程之刷钱封包制作资料篇 4.WPE系列教程之祝福油和幽灵手套篇 
5.WPE系列教程之神秘封包制作篇 6.WPE系列教程之攻击代码篇 
  



虽然好多外挂都被封了,可是现在回头看看,对我们的学习使用wpe还是有很大的帮助,
以下的几篇文章都是实际的经验,而且里面的方法更是值得我们学习,如何分析问题,
如何查找关键数据,从何处入手,等等。这些文章都是从网站上抄来的,首先向他们的
作者致歉,因为经过好多次的转载,有些作者都找不到了,因此没有署名。下面让我们
一起来看看:

虎卫版的破解

虎卫版更新了mir.dat文件,在我们进入游戏时会有一个验证身份的过程,类似答考卷。
举个例子:服务器给mir.dat文件的试卷题目是“天王盖地虎”然后虎卫的mir.dat答案
是“宝塔镇蛇妖”,这样,服务器就知道了mir.dat是合法的。而半月看血的那个mir.da
t文件并不知道正确的答案是什么,只有硬着头皮随便说了个答案。所以它的身份很快就
被揭穿了。最终的结果就是,我们被服务器踢出来了!

  现在,我们需要做的就是----欺骗服务器,让它认为半月看血的mir.dat文件是合法
的。我们知道,软件WPE的主要功能之一就是更换发送给服务器的数据包。只要在服务器
没有收到半月看血的mir.dat文件提交的答案之前,利用WPE将答案修改成正确的,服务
器就会认为半月看血的mir.dat文件是合法的。这样,挥半月,全屏看血,一步起跑,超
负重等功能就又可以实现了。

  下面就是具体的做法。(所需工具:WPE)

  准备工作:将patch这个文件改个名,这样可以避免服务器将半月版的mir.dat文件
自动更新成虎卫版的(两个版本的mir.dat文件大小不一样),这样做的话进入游戏的时
候会提示patch.exe程序不能使用,别管他,点OK就可以了。

  最关键的一步,是要知道合法的mir.dat文件所提交的试卷中的正确答案。在每次进
入游戏前,我们需要做的是选择自己的游戏帐号在哪个服务器、选择人物等等。这里的
每次选择,都会向服务器发送相应的封包。虎卫版和半月版在进入游戏之前所进行的前
几个步骤并没有太大的区别。在最后选择人物,点“开始”以后就有区别了----使用半
月看血的会被服务器踢出来。所以,我们可以初步认定,正是这一步在提交试卷。所以
我们可以使用不同的mir.dat进入游戏,在点开始之前用WPE截一下数据就可以知道正确
的答案和错误的答案都是什么了。

  注意:在使用WPE之前最好先对这个软件进行一下设置,让它只截取我们发送给服务
器的封包。这样的封包才是我们能够随意修改的。下面是我截取的数据

使用半月mir.dat

SEND-> 0000 23 35 3C 3C 3C 3C 3C 42 58 3C 3C 3C 3C 3C 3C 3C #5<<<<<BX<<<<<<<

SEND-> 0010 3C 3C 56 62 61 5D 57 63 5D 65 57 5F 3C 6C 49 6E <<Vba]Wc]eW_<lIn

SEND-> 0020 7B 47 7A 58 47 5A 6C 78 53 52 67 68 63 5B 21 {GzXGZlxSRghc[!

SEND-> 0000 23 36 46 5E 65 66 56 52 41 6A 5A 42 61 6A 48 3F #6F^efVRAjZBajH?

SEND-> 0010 3C 73 47 78 6B 75 6C 69 77 3F 6D 59 56 6A 6E 59 <sGxkuliw?mYVjnY

SEND-> 0020 78 6B 48 4F 4C 70 4A 3F 58 70 47 6F 44 6C 48 3F xkHOLpJ?XpGoDlH?

SEND-> 0030 40 6D 48 3F 3C 72 47 6F 3C 21 @mH?<rGo<!

SEND-> 0000 23 37 3C 3C 3C 3C 3C 4B 64 3F 3C 3C 3C 3C 3C 3C #7<<<<<Kd?<<<<<<

SEND-> 0010 3C 3C 21 <<!

SEND-> 0000 2A *

SEND-> 0000 23 38 3C 3C 3C 3C 3C 41 40 3C 3C 3C 3C 3C 3C 3C #8<<<<<A@<<<<<<<

SEND-> 0010 3C 3C 21 <<! 

使用虎卫mir.dat

SEND-> 0000 23 34 3C 3C 3C 3C 3C 42 58 3C 3C 3C 3C 3C 3C 3C #4<<<<<BX<<<<<<<

SEND-> 0010 3C 3C 56 62 61 5D 57 63 5D 65 57 5F 3C 6C 49 6E <<Vba]Wc]eW_<lIn

SEND-> 0020 7B 47 7A 58 47 5A 6C 78 53 52 67 68 63 5B 21 {GzXGZlxSRghc[!

SEND-> 0000 23 35 46 5E 65 66 56 52 41 6A 5A 42 61 6A 48 3F #5F^efVRAjZBajH?

SEND-> 0010 3C 73 47 78 6B 75 6C 69 77 3F 6D 59 56 6A 6E 59 <sGxkuliw?mYVjnY

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -