如何防止刷票,session验证码防不住

枫爱若雪 发布于 2012/11/01 12:34
阅读 5K+
收藏 0

       公司经常会做一些活动,有一些需要投票神马的,投票吧,如果做每个IP只能投票一次,每天,但是发现有人能刷票,结果就加上验证码,验证码就是放到session里,然后还是发现有人可以,而且验证码居然是空....然后做reffer限制,只允许本站的页面跳转过来,发现还是不行....

       诸位大神有没有什么好的建议?或者说明下是如何图片验证码,session的验证的,有思路的求思路,有工具的求工具

加载中
0
mark35
mark35
限制登录用户才能投票。一了百了
0
IdleMan
IdleMan
验证码为空,也允许投票了?
罪恶的花生
罪恶的花生
后台没有验证~ 或者后台直接比较的时候,直接如果都为空通过~
王振威
王振威
+1
0
Atnl-Yang
Atnl-Yang

我初步有个想法,不知道是否可行,没这么实现过

我是想使用邀请投票机制,这个邀请可以是事先邀请(已经提前获知用户信息)或者自动邀请(在用户到访时采集用户信息 - 可以采集约定条件,比如说IP之类的)

针对投票我是是走自动邀请之路,当用户到访时服务器采集用户信息,进行HASH运算获取用户唯一投票链接,将此链接发放给用户,用户可以访问此链接进行投票

    同一IP/日  获取的链接相同,每个链接的请求仅相应一次,然后废弃相应给客户 404 错误。

   这样的投票链接永远不会相同。而不用考虑cookie,session,ip ...

   当然了,如果用户使用了机器人使用代理服务器访问,或者模拟出其他用户发出投票请求的话,可能还得考虑一些东西。


   以上仅仅是我的一个初步想法,未进一步验证

0
JackyYong
JackyYong
这个东西可以很简单, MAC地址验证! 绝了! 
方峰
外网是得不到mac地址的
Jiazz
Jiazz
不需要任何工具 ~系统和本身就带修改MAC地址的功能~~写个简单的软件自动切换~
JackyYong
JackyYong
20/80原则
xmut
xmut
一点都不绝! - -#
JackyYong
JackyYong
浏览器都有相关的APIs, 你可以查一下!
下一页
0
fengyqf
fengyqf
验证有效性应该在投票处理程序里做,而不是表单页。限制ip不好,局域网对在多是同一个ip,reffer, cookie,都可以伪造,客户端禁用cookie 后,session 就无效了。登录可用是好办法,或者按ip限制每天(或小时)投票次数也可以 ip
0
leo108
leo108
能空验证码刷票,这只能说你们公司的程序猿太水了……
罪恶的花生
罪恶的花生
回复 @wad12302 : 零时工太累了~
Jiazz
Jiazz
打酱油的...
ddatsh
ddatsh
+1
叶落花开
叶落花开
+1
洲宝
洲宝
+1
下一页
0
枫爱若雪
枫爱若雪

引用来自“leo108”的答案

能空验证码刷票,这只能说你们公司的程序猿太水了……
...这个我们在表单提交页面做了非空,在处理页面做了非空,从session中取出当前验证码,然后获取客户输入的验证码,全都存入了 数据局,然后在数据库端做了非空限制...
0
deleted
deleted

引用来自“枫爱若雪”的答案

引用来自“leo108”的答案

能空验证码刷票,这只能说你们公司的程序猿太水了……
...这个我们在表单提交页面做了非空,在处理页面做了非空,从session中取出当前验证码,然后获取客户输入的验证码,全都存入了 数据局,然后在数据库端做了非空限制...
我打赌, 一定是验证成功后没注销或者变更原SESSION, 结果别人原地F5就狂投了
0
idea_biu
idea_biu
就像12306的验证码么。。
0
枫爱若雪
枫爱若雪

引用来自“$_$”的答案

引用来自“枫爱若雪”的答案

引用来自“leo108”的答案

能空验证码刷票,这只能说你们公司的程序猿太水了……
...这个我们在表单提交页面做了非空,在处理页面做了非空,从session中取出当前验证码,然后获取客户输入的验证码,全都存入了 数据局,然后在数据库端做了非空限制...
我打赌, 一定是验证成功后没注销或者变更原SESSION, 结果别人原地F5就狂投了
这个在后期考虑到了,每次对比完之后都会清空验证码的值
返回顶部
顶部