- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VS平台账号注机--详细文档--分析-原理-实现
VS平台账号注册机的原理和实现
Kimm King
Kimmking@163.com
2008年12月27日
摘要:
背景介绍
关于vs平台和账号
vs是一个对战平台。
玩游戏的应该都知道。
我是一个dota“骨灰”级玩家,很久前玩HF,后来玩bn、gg和vs,现在主要是玩vs平台了。从04年开始玩,4年了。在vs上也用了大概有30个号,绝大部分都记不清楚了。
一般情况,如果没做啥坏事,账号没被封,一个账号就够了。但是如果用了优化版、挤房间工具或是作弊器(maphacker、tcpview、必胜不败、进程控制之类),就可能被封号。等级高了,一般也换号,因为赢了没分,输了狂掉。有时候一段时间没玩或重装机器,想玩就不知道上次用的号是啥,当然几个级高的主号,平时和一些朋友和队友cw、ih用的,还记得。
关于账号注册和本文
言归正传,平时我们需要新的账号的时候,需要到网页上去提交资料、申请一个账号。本文档阐述的就是让程序自动完成这个步骤。直接批量的获取一些账号。当然,如果vs平台管理人员知道了这件事,一定会修改现有的账号申请验证方式,相信我发布解决方案不久就会失效。还有就是,vs的网站服务器是tomcat4,如果很多人同时用工具注册,vs的网站会直接挂掉。
所以,本文重在说明此类工作自动化的设计原理与实现过程,同时也提供一个实现自动注册的小工具。此原理同样使用于目前的论坛、留言板和blog等系统的自动信息提交,根据此思路,大家可以自己动手实现自己的相应工具。
声明:希望大家在某些网站和系统没有表示禁止工具注册和交互的情况下谨慎使用此文提供的工具和技术。
技术分析
网页手工注册方式分析
注册页面
呵呵,首先我们来看看常规的手工注册方式。
注册页面如下:
/user/center/register/user_register.jsp
图1 账号注册页面
从这个表单中可以看到,一共有6个必填的字段,分别是:用户名、两次密码、主职业、验证码和昵称(图上的红圈标记)。
查看此网页的源文件,可以看到各个字段的name分别为:
userName、assword、passwordSure、nickName、profession、iRand。
其中,验证码图片 图上的红方框标记 所在的url为:
/user/center/code/image2.jsp。
源文件中form定义为:
form name form1 method post 。
分析验证和提交的js中,没有定义表单的action,故此表单提交到自己所在的url。
注册账号
手工注册一个账号,提交后,提示如下图:
查看页面源文件,最后面如下所示:
script language javascript
alert 注册成功! ;
window.location.href ../comm/index.jsp; 如果注册失败,则可能提示信息为:
验证码不正确,注册失败!
该用户名已经存在或输入有错!
实现原理
大概步骤
根据以上分析信息,我们可以实现一个网络请求,附带上以上的各个所需信息,服务器即会认为是客户端浏览器提交了一个表单,进而为我们注册一个账号。
大概的步骤如下:
1、获取验证图片和cookie
2、分析验证码
3、模拟提交表单
4、分析是否成功
获取图片和cookie
一般来说,在同一个浏览器窗口中执行的一系列操作,其各个请求在服务器端是共session的。验证码的原理就是在验证码图片生成前先随即生成一组数字,然后放在此请求的session中,再用此数字生成图片输出到客户端的请求中。
.net基础类库中提供了几个http请求和回应的类:HttpWebRequest和HttpWebResponse。通过请求验证图片,然后得到响应的数据,保存到本地文件。同时获取会话的cookie,存入CookieContainer中,第三步的模拟表单提交时,需要使用此cookie,从而使请求在服务器端可以使用此次会话中session中的数据。 CookieContainer container new CookieContainer ; string url /user/center/code/image2.jsp; byte[] bs new byte[4096]; HttpWebRequest request HttpWebRequest WebRequest.Create url ; request.CookieContainer container; HttpWebResponse response HttpWebResponse request.GetResponse ; Stream resStream response.GetResponseStre
文档评论(0)