2024年4月28日发(作者:)

解决网络投票限制的一些方法

网络投票就是在网络上进行的投票活动,但和其他类型的投票不

同的是:网络投票是建立在网络投票系统上的,而结果完全由程序输

出,无需人工参与。这既是网络投票系统的优点也是其缺点,没有了

人工的参与,其结果很可能被投票者利用。而网络投票系统本身的技

术含量并不高,对于连续投票的验证能力薄弱,只要投票者掌握了原

理,就可以轻松地实现连续刷票,对投票结果进行操纵。那么,有些

投票者是如何突破网络投票系统,如何实现无限制刷票的呢?下面简

单的介绍一些方法。

网络投票的验证方式

参与过网络投票活动的网友都知道,当我们给其中某一项投票后,

马上再次进行投票,投票将不会成功,提示你“您已经投过票了”,那

么网络投票系统是如何知道你已经投过票了呢?这就是网络投票系统

的内置防刷功能在起作用。

在我们投出第一票的时候,第一种情况是:投票系统自动记录下

我们的IP地址,存入数据库,并且规定该IP地址多长时间内不准投

票。如果我们马上再次投票,投票系统会将我们这次投票时使用的IP

地址与其数据库中的IP地址进行比对,如果存在,则投票不成功。

第二种情况是:我们投的第一票成功后,投票系统会将投票成功

的信息保存在本地的Cookies文件中,并且在Cookies中注明投票成功

的时间,同时在程序中规定多长时间内不准再次投票。如果我们马上

再次投票,程序会读取保存在Cookies信息中的投票成功时间,并与

服务器中的时间比对,如果符合拒绝条件,则投票不成功。

总的来说,网络投票程序的防刷系统采用的原理就是IP验证和

Cookies验证,当然还有采用诸如身份验证等其他验证方式的网络投票

系统,不过目前网络上大多数的网络投票系统都是采用前者的验证方

式。而前者的验证安全性是很低的,通过一些工具就可以突破这些验

证,实现连续投票。

突破IP验证,采用网络代理

对于突破采用IP验证方式的网络投票系统,一般对于ADSL上网

而言,最简单但效率不高的方法是断线后重新拨号上网。ADSL是动

态分配IP地址,但这个地址是在一定的IP区间内变换,每次重新拨

号系统都会自动选择一个空闲的IP给你用,如果你刚断线紧接着就拨

号,你刚才用的IP可能还没有被别人占用,所以就不变。如果隔一段

时间以后再上,有可能你刚才用的IP已经被别人用了,所以系统会分

配给你一个新的IP,投票就可以重新进行了。对于有的网络服务商,

可能无需断网重新拨号,每隔一定的时间(比如15分钟),系统会自

动重新分配一个新的IP,投票就可以重新进行了。

对于突破采用IP验证方式的网络投票系统,我们还可以借用网络

上丰富的代理资源。使用代理对投票系统进行投票后,投票系统记录

下的IP地址是代理的,而不是我们自己的IP地址。如果想再次投票,

只需更换一个代理即可。由于使用代理投票留下的IP地址都不一样,

对于投票系统而言,这是属于正常的投票行为,因此是不会对我们的

投票进行拒绝的。下面我们来看看使用代理突破验证的方法。

寻找网络代理资源

利用网络代理资源来突破投票系统的验证,当然需要大量的网络

代理资源。这些资源我们可以在一些专门的网络代理发布网站寻找。

例如“代理中国”等网站,每天都有大量的网络代理公布。找到代理

资源后,我们需要验证这些代理的连通性,以保证代理能够正常使用。

验证代理的连通性我们可以借助一款名叫“花刺代理验证”的软件。

将代理资源保存为“IP:端口号”的形式,每行一个,以此格式制

作一个代理列表,并保存为文本文档。列表制作完成后运行“花刺代

理验证”,点击界面右侧的“导入”按钮,将我们制作的代理列表导入

进来,然后点击“验证全部”即可。软件会自动验证所有的代理,并

将可用的代理显示出来。验证完成后,我们点击“清理”按钮,将无

法连接的代理清除掉。最后点击“导出选定”,将可用的代理保存为列

表。

最后在软件的代理信息栏中选中一个代理,点击“设为IE代理”,

并用IE浏览投票网站即可。至此,我们已经可以突破投票系统的IP

验证了,但是这样投票的效率很低,而且操作略显繁琐,是最基本的

刷票方法。

采用广告作弊软件

上文中用手动设置代理的方法虽然可以突破验证,但是却效率低

下。其实我们可以借助一些广告作弊软件,来达到自动更换IP地址刷

票的效果。下载“心奇广告作弊”,运行后切换到“设置”标签,在“刷

新选项”中勾选“代理刷新”这样程序就会自动更换代理来刷新IE。

接着勾选“是否关闭IE”并将其时间设置为5秒,其他保持默认即可。

最后点击“导入代理”按钮将我们刚才导出的代理列表导入到软件中

来。设置完成后在软件的“网站”文本框中填入投票系统的网址,并

将其打开。一切就绪后,点击“开始”按钮,软件会自动弹出IE,一

段时间后又会自动关闭,我们就趁这段时间进行投票。虽然也需要人

工操作,但是效率已经有了大大的提高。

拦截Cookies,避开投票系统验证

除了IP验证外,网络投票系统的另一种防刷票验证方式是Cookies

验证。我们在投票系统上成功投票后,会在本机的C:Documentsand

Settings用户名Cookies文件夹下生成一个Cookies文件,这个文件中

包含了投票成功的时间等信息。当第二次投票时,投票系统会首先检

测Cookies文件夹中有没有这个Cookies文件,如果没有,则认为这位

用户是第一次投票,可以成功投票。因此我们可以在投票成功后进入

系统的Cookies文件夹,将这个投票成功后生成的Cookies文件删除,

这样就可以马上再次投票,Cookies验证也就这样轻易得被我们破解

了。

同样的,我们手工删除投票系统生成Cookies文件虽然可以突破

Cookies验证,但仅仅是突破了验证而已,其效率之的低下,完全谈不

上刷票。因此我们必须借助一些工具,以达到快速刷票的目的。

手工删除Cookies是一件很麻烦的事,如果我们设置IE的属性,

使之不允许保存Cookies,那么投票系统同样检测不到Cookies,其效

果是一样的。这里我们可以借助“CookiePal”等软件,“CookiePal”

这款软件可以对Cookies进行实时的检测,允许你自动接受或拒绝网

站在本机保存Cookies。

安装“CookiePal”,完成后运行,切换到“过滤器”选项,我们

需要将投票网站的Cookies添加到“拒绝cookie”菜单。点击“新的...”

按钮,将投票网站的服务器名字添加进去。这样投票网站就无法在本

机生成Cookies了,如果你无法确定投票网站的服务器名称,可以选

中“未知服务器cookie”标签中的“全部拒绝”单选框。选中该项后,

所有网站的Cookies文件都将被拒绝。

打开IE浏览器,进入投票网站,成功投票后,“CookiePal”会自

动拦截Cookies,并询问你允许还是禁止Cookies,这里我们当然选择

“禁止Cookies”,并勾选“将我的决定应用到来自此网站的所有

cookie”。这样我们就可以突破Cookies验证并在投票网站上连续投票

了。

本地提交数据包,实现快速刷票

至此,我们已经完全突破了投票系统的验证,接下来的问题是如

何才能快速的实现刷票。我们都知道,在投票系统上进行投票,实际

上是向投票系统发送了一个数据包,但是在IE中进行操作的话,从打

开页面→选择投票对象→发送,这个过程会占用我们很多的时间,影

响刷票的效率。如果我们能离开IE,直接发送数据包给投票系统,那

么这个速度就要快的多了,也就能实现所谓的刷票。

既然我们可以利用本地提交数据包的原理来进行刷票,那么这个

数据包该如何获取,又该如何提交呢?

获取数据包

获取数据包可以使用网络数据包监视工具WSockExpert等。首先

用IE打开投票网站,注意不要投票。然后运行WSockExpert,点击工

具栏上的“打开”按钮,在弹出的进程列表中双击IE,并选中投票网

站的进程,点击“打开”。接着回到IE的投票网站页面,选择一项进

行投票。返回WSockExpert,我们可以看到程序已经捕捉到了很多数

据包,在这些数据包中,我们可以找到一个以“POST”开头的数据包,

这就是我们本机发送给投票系统的数据包。

本地提交数据包

下载本地提交数据包工具,在其“URL”一项中填入

投票网站的地址,然后将我们刚才捕获的“POST”数据包中的内容复

制到其“发送内容”文本框中即可。接着我们只要点击一下“SEND”

按钮就可以把数据包发送出去,以后每点击一下“SEND”按钮,就等

于投了一票。如果配合“按键精灵”等鼠标点击模拟软件,则可以实

现快速数票。据统计,一分钟可以刷将近1200票,可见其对投票结果

的影响力。

小贴士:本地递交数据包的方法只适用于采用Cookies验证的投

票系统,而对采用IP验证的投票系统来说则不起任何作用。

增加验证机制,可以适度增加网络投票的公平性

很多网络投票系统虽然都有防刷票验证能力,但是仅仅具有IP验

证或Cookies验证是不够的。在这两种验证的基础上,投票系统的编

写者在编写程序的时候可以对投票者增加来路检测、Session验证等验

证方法,或者加入复杂的验证码系统。这样即使不能完全杜绝刷票,

也可以影响投票者刷票的效率,减少投票者对投票结果的干扰。不过,

即使投票者再高明,管理员也可以在服务器上看到刷票的踪迹,投票

者刷票后无可避免的会在服务器上留下大量相同的IP地址,或者同一

网段的IP地址,这是无法销毁的痕迹,因此对于想通过刷票来达到目

标的朋友,要张弛有度,适可而止,尽量保持投票的公证性,防止投

票对象可能因刷票过度而被取消资格。

总体而言,网络投票是一种网络上的数字游戏,刷票有很多方法

可以实现,所以票数的高低实在说明不了什么。而且,如果管理员或

者程序员想人为改变投票结果,只需轻轻动一下鼠标就可以完成投票

数据库中票数的更改。再远些,就扯到技术和道德伦理范畴了。所以

网络投票发起者要对投票系统的技术水平有所把握,防止把增加网络

人气的大众喜剧变成少数人刷票的闹剧。而网络投票者也大可不必太

当真,网络投票不过是无聊时玩的一种趣味游戏而已。