一步一步教你怎么写牧场外挂_教你如何编写游戏外挂
一步一步教你怎么写牧场外挂由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“教你如何编写游戏外挂”。
一步一步教你怎么写牧场外挂
2010-11-09 10:45:37php
首先需要准备2个工具:HttpWatch(或HttpAnalyzer),以及JSONViewer(http:///JsonViewer)
HttpWatch(或HttpAnalyzer)是收费软件,JSONViewer是free的。另外你也可以安装Firefox的JSONView插件,也可以不用JSONViewer。
编写任何一个WEB应用外挂,第一步肯定都是登录。只有正确登录了,才能继续后面的操作。
我们先拿HttpWatch来分析一下搜狐白社会的登录过程。
第一部分:登录
1、打开http://bai.sohu.com,如果你以前已经登录了,先退出来到要求你输入email和密码的页面
2、按下HttpWatch的Record按钮,然后在页面上输入Email和密码,点登录。然后你会进入白社会首页。这个时候看一下HttpWatch记录的轨迹
3、通过上面HttpWatch记录的轨迹,我们很容易看到,登录的真实URL是: http://paport.sohu.com/o/login.jsp?userid=你的E-MAIL账号&paword=密码串
&appid=1062&persistentcookie=1&s=1248665199215&b=2&w=1440&pwdtype=1 上面地址中,userid是你登录时输入的email地址,paword是经过md5加密的字符串,s是时间(1970-1-1到现在的秒数,应该是这个账号注册的时间。在C语言中可以用time()函数来产生),w应该是计算机屏幕X方向的分辨率,persistentcookie表示保存cookie,b和pwdtype是一个常量,不知道具体含义(我们也不需要关心)。
OK,通过上面我们看到的URL,就可以完成账号登录了。
第二部分:进入阳光牧场
1、打开HttpWatch的Record,点击首页左侧的“阳光牧场”,HttpWatch会将每个页面动作都记录下来。我们可以看到,阳光牧场的真实地址是http://bai.sohu.com/app/farm/。在HttpWatch中选中
http://bai.sohu.com/app/farm/这条记录,在下方的Content页签中,2、你可以把这个页面的source code复制出来,到dreamweaver或其他编辑器中查看,你会发现,这个网页其实包含了几个iframe。其中有一个iframe,才是真正的、中间那个阳光牧场的大flash的地址:
src=“http://sh_farm.rekoo.com/embed_swf/?so_sig_uid=6位数字
&so_sig_seion_key=UXdkRmZMaUxFQjg9&so_sig_sig=049fa15390e4c9acffbecac8870e83c1” frameborder=“0” width=“796” height=“590”
scrolling=“no”>
在上面的地址中,so_sig_uid就是你在搜狐白社会网站的用户ID,这个ID对一般用户来说没什么用,是每个用户在数据库中的标识。但是对我们编写外挂来说,就很有用了,所以在这个地方,你需要将这个ID保存下来,以后要用到。
3、在浏览器中输入http://sh_farm.rekoo.com/embed_swf /?so_sig_uid=6位数字
&so_sig_seion_key=UXdkRmZMaUxFQjg9&so_sig_sig=049fa15390e4c9acffbecac8870e83c1,你会发现浏览器中只留下刚才我们看到的中间的那个大flash了,其他的通通都没有了。事实证明我们找到的这个iframe是正确的。(注:执行此步骤时,别忘了打开HttpWatch的Record)
4、在HttpWatch中选中上面的地址,观察一下返回的Content:
5、在上面我选中的高亮部分中,你能看到seion_name、seion_value、uid等一些信息。其中对我们非常重要的一个值就是seion_value。有过web开发经验的朋友都知道,登录后,在站点中是有一个seion在client端维护着用户的一些信息,并且这个seion是每次登录都会产生的随机字符串,并且有一定的有效期(由管理权配置)。所以,我们要模拟web的动作,就需要拿到正确的seion字符串,也就是上面我们看到的那个seion_value。
其实到目前为止,我们的分析工作已经进行了一大半了。简单总结一下: 我们上面做了那么多事情,最重要达到两个目的:
(1)如何模拟用户登录
(2)获得正确的UID和seionid
另外,关于seionid的获取还有其他方法,例如,如果你使用的是Java,可以从cookie中读取到seionid。
第三部分、分析阳光牧场各种操作
有了上面的基础,下面的分析简直是易如反掌了。
1、打开HttpWatch的Record,将上面的http://sh_farm.rekoo.com/embed_swf /?so_sig_uid=6位数字
&so_sig_seion_key=UXdkRmZMaUxFQjg9&so_sig_sig=049fa15390e4c9acffbecac8870e83c1 重新刷新一下。
2、在HttpWatch中,你会看到很多这样的地址:
http://sh_farm.rekoo.com/get_api/,这个地址那可是相当的重要啊,几乎所有的命令请求都是往这个地方发。
3、选中http://sh_farm.rekoo.com/get_api/,在下面的POST Data中可以看到:
原来这是一个标准的http post请求,完整的URL就是:
http://sh_farm.rekoo.com/get_api/?method=user.get_friends&rekoo_killer=你的6位UID&seionid=刚才我们从页面上获取到的seion_value 然后我们点击旁边的Content页签,看到服务器返回的内容如下:
上面是典型的JSON数据,接下来怎么做不用我说了吧。你可以把上面的内容复制到JSONViewer中,它提供了树形结构供你方便的展开每个节点,以分析父子关系、每个节点的类型等信息:
4、上面我们看到的是获取好友列表的请求,其他的诸如获取商店信息、杀虫浇水、播种、收割„„请求地址都是http://sh_farm.rekoo.com/get_api/,只不过post的参数不同而已。将正确的参数post给服务器,服务器就会返回相应操作的JSON数据给你,有了这些数据,你就可以进行后期的分析处理了。
OK,通过上面文字的介绍,相信各位已经明白了,这样的一个外挂是怎么工作的了。
4、上面我们看到的是获取好友列表的请求,其他的诸如获取商店信息、杀虫浇水、播种、收割„„请求地址都是http://sh_farm.rekoo.com/get_api/,只不过post的参数不同而已。将正确的参数post给服务器,服务器就会返回相应操作的JSON数据给你,有了这些数据,你就可以进行后期的分析处理了。
OK,通过上面文字的介绍,相信各位已经明白了,这样的一个外挂是怎么工作的了。
4、上面我们看到的是获取好友列表的请求,其他的诸如获取商店信息、杀虫浇水、播种、收割„„请求地址都是http://sh_farm.rekoo.com/get_api/,只不过post的参数不同而已。将正确的参数post给服务器,服务器就会返回相应操作的JSON数据给你,有了这些数据,你就可以进行后期的分析处理了。
OK,通过上面文字的介绍,相信各位已经明白了,这样的一个外挂是怎么工作的了。