内幕曝光!黑客将网络投票玩弄于股掌

2008-02-23 07:23:44来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  现在各种选秀盛行,在海选阶段,举办人往往采用网络投票的方式聚集人气。本来,网络投票的票数的统计和显示完全由软件控制,无须人工参与,在一定程度上能够保证投票的公正性。可是大多数网络投票系统本身的技术含量并不高,对于连续投票的验证能力薄弱。让黑客可以对投票结果进行作弊,轻松操纵投票结果。那么,黑客是如何突破各种各样的网络投票系统的,又是如何实现无限制投票的呢?有没有什么防范措施呢?

  网络投票随处可见,但是投票系统技术含量低,极易被黑客找到漏洞,从而操纵网络投票结果。那么黑客是如何操纵投票的呢?通常情况下,他们会有以下几个步骤。

  第一步:如果没有发现网站漏洞,则考虑从投票系统上突破。黑客找到网络投票系统采用的验证方法,并根据投票验证系统的漏洞制定不同的突破手段。

  第二步:进行突破验证系统实验,如果成功,则开始编写相应的批量投票程序。

  第三步:将编写好的程序发布到黑客的肉鸡上,通过僵尸网络对网络投票结果进行操控。

  以上是黑客在操纵网络投票时,通常的一些步骤。从在这些步骤中,我们可以发现,黑客不仅是在自己的主机上进行操作,还利用他们所控制的僵尸网络对投票进行操纵,这不但保护了黑客自己,还为网络管理员恢复投票结果增加极大的障碍。

  为何黑客屡屡得逞

  在所有的网络投票活动中,人们最担心的就是有人作弊,不断的进行投票。为了防止作弊,管理员会在网络投票系统中采用一种或几种验证方式。但是这些验证手段都存在各种缺陷,导致黑客屡屡得逞。一下就是现在流行的验证方法以及它们的缺陷。

  Cookies验证法

  在投第1票成功后,投票系统会将投票成功的信息保存在本地的Cookies文件中,并且在Cookies中记录投票成功的时间,同时在软件中设定1天内不准再次投票。

  如果投票者马上再次投票,软件会读取保存在Cookies信息中的投票成功时间,并与服务器中的时间比对,如果符合拒绝条件,则投票不成功。

  突破Cookies验证法

  删除Cookies、拦截Cookies适合于突破采用Cookies验证法的投票系统。投票者在投票系统上成功投票后,会在本机的C:\Documents and Settings\用户名\Cookies文件夹下生成一个Cookies文件,这个文件中包含了投票成功的时间等信息。

  当第2次投票时,投票系统会首先检测Cookies文件夹中有没有这个Cookies文件,如果没有,则认为这位用户是第1次投票,可以成功投票。

  因此黑客在投票成功后进入系统的Cookies文件夹,将这个投票成功后生成的Cookies文件删除(也可以在IE浏览器的工具→Internet选项→常规中点击“删除Cookies”按钮),这样就可以马上再次投票,Cookies验证也就这样轻易的被破解了。

  当然,如果黑客修改IE属性,使之不保存Cookies文件,那么投票系统同样检测不到Cookies,突破效果也是一样的。

  Session验证法

  原理同Cookies验证法, 但是Session是保存在服务器上的。

  小知识:什么是Session?

  在这里,Session特指在访问网站时,浏览器和服务器建立的一次会话连接。

  突破Session验证法

  关闭浏览器,再重新打开浏览器,这种方法适合突破采用Session验证法的投票系统。由于关了浏览器后,Session也会清空,所以投票系统会认为这是用户第一次投票,可以成功投票。

  IP地址验证法

  在投第1票成功后,投票系统自动记录下投票者的IP地址,存入数据库,并且设定该IP地址1天内不准再次投票。

  如果投票者再次投票,投票系统会将投票者这次投票时使用的IP地址与数据库中的IP地址进行比对,如果存在,则投票不成功。

  突破IP地址验证法

  动态IP,网络代理,这种方法适合突破采用IP地址验证方式的投票系统。对于使用ADSL拨号的上网用户来说,由于每次拨号上网使用的IP都不同,所以可以采取投一次票,断开一次网络连接,再拨一次号的办法。

  另外,使用代理对投票系统进行投票后,投票系统记录下的IP地址是代理的,而不是我们自己的IP地址。如果想再次投票,只要更换一个代理即可。由于使用代理投票留下的IP地址都不一样,对于投票系统而言,这是属于正常的投票行为,因此是不会对我们的投票进行拒绝的。

  Referer验证法

  在投票者投票时,投票系统要验证Referer,判断是否是从指定网站上进行的投票,如果是来自站外的投票,则投票不成功。

  小知识:什么时Referer?

  是HTTP协议,在开发web程序的时候,有时我们需要得到用户是从什么页面链接过来的,这就用到了Referer。它主要作用用于防止盗链和验证网络表单的安全性。

  突破Referer验证法

  伪造Referer这种方法适合突破采用Referer验证方式的投票系统。黑客会编写个简单的小程序来伪造Referer提交。如下是伪造Referer的核心代码。

  set http=server.createobject("MSXML2.XMLHTTP")

  Http.open "GET","http://www.xxx.com/cgi-bin/samvote?id_user=xxx",false

  Http.setRequestHeader "Referer","http://www.xxx.com/"

  Http.send()

  其中关键一句是Http.setRequestHeader "Referer","http://www.xxx.com/" ,http://www.xxx.com/就是我们伪造的Referer。如此一来,站外投票的限制就这样被轻易突破了。

  利用僵尸网络操纵投票

  以上验证方法虽然都可以突破,但效率较低,达不到黑客操纵投票的目的。因此黑客会利用一些软件或者自编一些程序,再利用僵尸网络进行海量投票,达到提高效率、操纵投票的目的。

  方法一:使用按键精灵来录制“删除Cookies→投票”的鼠标动作或者“拨号→投票→断网”的鼠标动作来进行自动投票。

  方法二:使用自动更换代理IP地址的软件来进行自动网络代理投票。

  方法三:使用本地提交数据包的原理进行投票。在投票系统上进行投票,实际上是向投票系统发送了一个数据包,但是在IE中进行操作的话,从打开页面→选择投票对象→发送,这个过程会占用很多时间,影响投票的效率。如果能离开IE,直接发送数据包给投票系统,那么这个速度就要快的多了,也就能实现操纵投票的目的。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:教你如何对ADSL上网的相关参数进行优化

下一篇:提高警觉 严防个人信息泄漏QQ密码