首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

ASP.NET防止别人刷票,求教解决方法

2012-06-19 
ASP.NET防止别人刷票,求教解决办法请教大家,我们做的一个投票网站,需要注册,注册时有验证码,注册后才能投

ASP.NET防止别人刷票,求教解决办法
请教大家,我们做的一个投票网站,需要注册,注册时有验证码,注册后才能投票,投票也做了验证码,可是还是被人用机器人注册,用机器人投票,我们做了“限制注册IP数量”等都无济于事,他们IP会变的,很是郁闷,请问大家有什么好的建议没?谢谢!!!
我们目前做的工作有:
1 限制了注册IP 每天只能注册10次
2 限制了投票IP 每天只能投10票
3 验证码已经弄的足够复杂了,不知道他们是怎么弄到的,目前我们只把保存在了Session["Validate"]里,莫非他们能取到Session?
4 注册页面需要填的也够多了,就是不行哎


拜托了!每天删机器人删的很是郁闷!

[解决办法]
如果果然按照你说得那些条都做到了还不行..
那就采用邀请码的方式吧..

[解决办法]

探讨
如果果然按照你说得那些条都做到了还不行..
那就采用邀请码的方式吧..

[解决办法]
把验证码的代码发出来看看
[解决办法]
关注!!
[解决办法]
这样都不能阻止???
那你遇到高人了
[解决办法]
验证码被破解了?
[解决办法]
1.注册之后,在一定时间段内不允许投票,比如新注册用户,在一天内不允许投票
2.注册之后,只有在线时长超过一段时间才允许投票,比如超过30分钟
......
[解决办法]


就要是IP变来变去的问题,他们可能用了代理
IP你怎么判断的?估计取到了代理IP

 限制了投票IP 每天只能投10票 (这个他们不能搞你)
 
[解决办法]
判断他是否用了代理
[解决办法]
探讨
1.注册之后,在一定时间段内不允许投票,比如新注册用户,在一天内不允许投票
2.注册之后,只有在线时长超过一段时间才允许投票,比如超过30分钟
......

[解决办法]
投票一次后在客户端用KOOKIE保存他的IP,用户名,时间 投票的时候先验证此IP或用户是否在KOOKIE中存在 存在则提示他在某一时间内不许再次投票 但KOOKIE人为可以清楚如果想他人不刷 就用表保存吧
[解决办法]
你可以使用中文字来做验证码
[解决办法]
mark
[解决办法]
这个问题我公司也遇到过,几乎所有的注册码都是可以破解的,我们现在采用的注册用户邮件激活方式来杜绝的.
[解决办法]
汉字验证码
[解决办法]
机器人对于流程性质的东西都好做,但对于等待的东西就不好玩了

建议1:注册的时候不是有个协议么,等10秒才能提交,对正常用户没什么影响,对机器人影响比较大
2:投票的时候弹出一个窗口确认下,这个对正常用户没影响,对机器人影响比较大
3.对不起,你的session的值用工具取得到,记得加密下
[解决办法]
投票完毕后创建一个cookie在用户本机上设他的值是10,以后每次投票都取cookie的值,成功后减一

有效期设她个1个月好了,我像机器人不会知道你用了什么cookie吧,除非本机禁用了cookie,这样只能用SESSION了


还有用session。机器人是不会知道的,存在服务器端的东西
[解决办法]
弄个guid


你网址呢??
[解决办法]
实话告诉你,不是你程序的错,你的验证码已经足够强了,靠软件的确是无法识别
关键是现在有个地下产业链,你不知道,我来告诉你吧
原来居然有专门在电脑前输入验证码的软件,只要有人使用这个软件,来输入验证码就有积分,积分可以兑换人民币,
有很多人下这个软件,然后天天输入验证吗来获取收入,所以没有办法。你就等着被恶意提交吧
[解决办法]
1 限制了注册IP 每天只能注册10次
如果是拨号上网的话(比如adsl),每次拨号都会得到一个新的IP,可以每次拨号后投
2 限制了投票IP 每天只能投10票
每次拨号得到新的IP。
3 验证码已经弄的足够复杂了,不知道他们是怎么弄到的,目前我们只把保存在了Session["Validate"]里,莫非他们能取到Session?
验证码图片还是比较规则,干扰点少,很容易识别的
4 注册页面需要填的也够多了,就是不行哎
填再多信息都没有用,用程序来填的话,填一个信息和填100个信息是一回事。


------解决方案--------------------


取得session很容易 他只是在http协议中
http协议头就包含了session的定义
[解决办法]
1 限制了注册IP 每天只能注册10次
换代理,每代理每天注册一个即可,重新拨号换IP?太老土了
2 限制了投票IP 每天只能投10票
还是换代理,每天投10票
3 验证码已经弄的足够复杂了,不知道他们是怎么弄到的,目前我们只把保存在了Session["Validate"]里,莫非他们能取到Session?
现在的神经网络识别验证码,识别率90%多
总之你的验证码太简单,最起码弄几个汉字的验证码,然后加干扰纹,扭曲等效果,或者是输出题目,让输答案
4 注册页面需要填的也够多了,就是不行哎
没用,最好是发邮件或者发短信要求验证,把流程弄得复杂一些
[解决办法]

探讨
取得session很容易 他只是在http协议中
http协议头就包含了session的定义

[解决办法]
象常来一样 每天注册到一定数量的帐号就不能注册了 

所以你也可以针对某个投票来控制每天的投票数,统计达到了某个数(例如1000)就取消投票的功能。。明天恢复。。


当然你可以获取到很多的客户端信息,足够判断是否是同一台电脑或是否属于同一局域网!
[解决办法]
关键还是增加图片识别的难度,
利用IP限制基本没有用,利用重新拨号,或者代理服务器都可以解决,但还是要做限制
尽量能做到像QQ的图片验证那样,
多用几种产生验证图片的算法来产生验证图片,如果只用一种算法产生图片的话,很快就会被找到规律
图片的干扰点尽量多些,使得图片更难识别
[解决办法]
另外也可以用问答的形式
比如诗歌,你给出上句,别人答出下句之类的
[解决办法]
探讨
1 限制了注册IP 每天只能注册10次
换代理,每代理每天注册一个即可,重新拨号换IP?太老土了
2 限制了投票IP 每天只能投10票
还是换代理,每天投10票
3 验证码已经弄的足够复杂了,不知道他们是怎么弄到的,目前我们只把保存在了Session["Validate"]里,莫非他们能取到Session?
现在的神经网络识别验证码,识别率90%多
总之你的验证码太简单,最起码弄几个汉字的验证码,然后加干扰纹,扭曲等效果,或者是输出题目,让输答案


[解决办法]
探讨
string bgFilePath = Server.MapPath("images/bg" + new Random().Next(5) + ".jpg");//随机找个图象

[解决办法]
O,Sorry,没有仔细看你的程序。sorry。我看到了下边绘制文字了。呵呵
[解决办法]
mark
[解决办法]
学习一下.希望高人来解答一下.
[解决办法]
1.记下MAC
2.投票那个页面用弹出窗口不允许放在框架中这样也行。
没有第3了
[解决办法]
学习下
[解决办法]
一看你的代码就知道有漏洞,竟然用session来保存
[解决办法]
探讨
1.记下MAC
2.投票那个页面用弹出窗口不允许放在框架中这样也行。
没有第3了

[解决办法]
探讨
一看你的代码就知道有漏洞,竟然用session来保存

[解决办法]
用session对服务器的压力很大 
而且它有会话时间限制 容易断
[解决办法]
可以限制时间
[解决办法]
或用排队机制
[解决办法]
经常换图片识别算法。
[解决办法]
探讨
代理不好找啊,每天搜索代理服务器也够累,除非你付钱去买

[解决办法]
考虑MAC地址限制

热点排行