{技术}{注册相关}邀请大家讨论一下对于网站恶意注册的相关技术.

9 views
Skip to first unread message

Saito

unread,
Sep 30, 2009, 1:00:48 AM9/30/09
to TopLanguage
关于大型网站的恶意注册应该算是类似牛皮糖的存在. 其实就跟大型网游有外挂的存在一样... 很难根治..

之前我们考虑了使用控件的形式来唯一确定客户机 .但是控件会影响用户体验. 所以还是撤下来了..关于验证码这方面. . 网站本身并不能做
到实时产生验证码.因为访问量巨大. 产生验证码这个过程相当耗费资源.. .. ip的限制现在只能是个幌子. 因为很好伪造..

不知道大家有没有这方面的经验..

四不象

unread,
Sep 30, 2009, 5:10:01 AM9/30/09
to pon...@googlegroups.com
如果你觉得验证码都是一种严重资源消耗,那还真没有什么低消耗的解决办法

Jeff Chen

unread,
Sep 30, 2009, 5:21:19 AM9/30/09
to pon...@googlegroups.com
验证码为何很耗资源....?
--
My Blog:http://jeffchen.cn

trydofor

unread,
Sep 30, 2009, 5:34:41 AM9/30/09
to pon...@googlegroups.com
国庆快乐。

可以变通想一下验证码。
http://www.captcha.net/
http://server251.theory.cs.cmu.edu/cgi-bin/esp-pix/esp-pix

有个很好的网站,找不到了。
提供第三方验证服务,使用 网上的图片。


--
http://trydofor.com - Simplicity is everything.

@@

unread,
Sep 30, 2009, 8:50:43 AM9/30/09
to pon...@googlegroups.com
验证码还好吧。
要实在嫌耗资源就用答题那种模式的了

2009/9/30 Saito <saito....@gmail.com>

sagasw

unread,
Sep 30, 2009, 12:50:37 PM9/30/09
to pon...@googlegroups.com
"产生验证码这个过程相当耗费资源",  快用云计算阿。


不过不要问我怎么用,只是觉得这个词比较搭。


严肃一点说,能否介绍一下你们网站的访问量到底大到什么程度,连计算验证码都成了瓶颈。我是不太明白为何非要实时计算的,难道不可以在负载不那么大的时候算好一批放着,然后即用即抛么?

2009/9/30 Saito <saito....@gmail.com>

chen jianmin

unread,
Oct 1, 2009, 12:09:26 AM10/1/09
to pon...@googlegroups.com
之前有个朋友说过,他的说法是只给服务器传个时间戳过去。因为就是算是别人要破坏你给了验证码图片也没啥大用。所以加个时间戳,起到一定的防范作用。这里作抛砖引玉之言啊!

不过上次不是有人讨论网站注册用户体验方面的信息吗。我想有可能在预注册与正式注册这间做些事情!从产品层面解决也是可能的吗,比如只有正式用户才能做一些事,而且正式用户要去相应的地方完成相应的信息录入,或者要在线多少小时,然后做一个特定的任务什么的。

2009/10/1 sagasw <sag...@gmail.com>

Johnbin

unread,
Oct 1, 2009, 9:32:29 AM10/1/09
to TopLanguage
现在的验证码的验证方式属于单向的,缺少用户的参与,所以很难防止一些自动识别程序。我想是不是可以换成一个小的flash,然后让用户可以参与进来,
只有达到某种状态也会通过认证。这样有了用户交互的话,我感觉能够起到一些作用。

Saito

unread,
Oct 1, 2009, 10:44:29 AM10/1/09
to TopLanguage

产生验证码的效率问题是这样的... 每天产生16w个注册码. 然后入库.. 需要耗费多长时间呢? ..


答案是5个小时...


On 10月1日, 上午12时50分, sagasw <sag...@gmail.com> wrote:
> "产生验证码这个过程相当耗费资源", 快用云计算阿。
>
> 不过不要问我怎么用,只是觉得这个词比较搭。
>
> 严肃一点说,能否介绍一下你们网站的访问量到底大到什么程度,连计算验证码都成了瓶颈。我是不太明白为何非要实时计算的,难道不可以在负载不那么大的时候算好一 批放着,然后即用即抛么?
>

> 2009/9/30 Saito <saito.java...@gmail.com>

Bill Wung

unread,
Oct 1, 2009, 1:37:44 PM10/1/09
to pon...@googlegroups.com
Try to use 3rd party capcha service such as recapcha.

--
Sent from my mobile device

笑骂由人,洒脱自如!
心若冰清,天塌不惊!
http://www.iron-feet.cn

四不象

unread,
Oct 7, 2009, 10:45:02 AM10/7/09
to pon...@googlegroups.com
加台服务器用于生成验证码不行么?
再说了,只要保证验证码重复几率降到一定就可以了,所以每天并不用生成16w注册码,只要生成1k个随机使用即可,或者一次性生成100w个以供长期随机使用。

----- Original Message -----
From: "Saito" <saito....@gmail.com>
To: "TopLanguage" <pon...@googlegroups.com>

jing wang

unread,
Oct 7, 2009, 10:58:54 AM10/7/09
to pon...@googlegroups.com

我还没有深刻体会到恶意注册的坏处

pi1ot

unread,
Oct 7, 2009, 1:15:07 PM10/7/09
to TopLanguage
很多网站求之不得吧,好歹算个业绩

On 10月7日, 下午10时58分, jing wang <wangjing.phe...@gmail.com> wrote:
> 我还没有深刻体会到恶意注册的坏处

peter p.

unread,
Oct 7, 2009, 11:26:31 AM10/7/09
to pon...@googlegroups.com
我参加了今年的大学生信息安全竞赛,我们的选题就是设计新型验证码。
首先我尝试识别了许多简单的验证码,其中包括sina注册的验证码,而且也实现了自动注册用户账户的程序。在验证码能够程序自动识别的情况下,恶意注册用户账户实在是很容易的一件事情。我们的思路是设计新型的验证码,具体内容涉及专利,这里就不多说了。
       实际上如果能从协议设计上提高自动恶意注册的难度无疑是更好的。请问这里的时间戳怎么理解???

2009/10/1 chen jianmin <nrb...@gmail.com>

Bill Wung

unread,
Oct 7, 2009, 12:49:41 PM10/7/09
to pon...@googlegroups.com
数据库压力过大,带宽占用造成的堵塞等等诸多问题。即使前期做过相应的压力测试,也不能保证不出现别的问题。

On 10/7/09, jing wang <wangjin...@gmail.com> wrote:
> 我还没有深刻体会到恶意注册的坏处

Bill Wung

unread,
Oct 7, 2009, 2:28:52 PM10/7/09
to pon...@googlegroups.com
如果用这个来满足虚荣心自认为是业绩的话,还不如自己直接修改数据库来的方便快捷,还不会给站点造成太大压力

--

WarmC.

unread,
Oct 7, 2009, 9:39:43 PM10/7/09
to pon...@googlegroups.com
同意使用Flash的方法,这样也有点点互动,不需要用户敲键盘,只是鼠标的拖动。
比如一把钥匙和一个锁头,把钥匙插进锁头就通过验证。

四不象

unread,
Oct 8, 2009, 1:47:46 AM10/8/09
to pon...@googlegroups.com
flash破解起来要比图像识别简单

2009/10/8 WarmC. <warm...@gmail.com>

同意使用Flash的方法,这样也有点点互动,不需要用户敲键盘,只是鼠标的拖动。
比如一把钥匙和一个锁头,把钥匙插进锁头就通过验证。



--
水仙欲上鲤鱼去
一夜芙蓉红泪多

Tinyfool

unread,
Oct 8, 2009, 1:52:44 AM10/8/09
to pon...@googlegroups.com
 防止恶意注册关键在于服务器端验证,flash如果验证逻辑在客户端,随便就破解了,如果验证逻辑在服务器端,何必上flash这么大的客户端负担呢?
--
Tinyfool的开发日记 http://www.tinydust.net/dev/
代码中国网 http://www.codechina.org
myTwitter: http://twitter.com/tinyfool

pi1ot

unread,
Oct 8, 2009, 3:05:53 AM10/8/09
to TopLanguage
拿给VC看的东西多多少少要有点真实性,咱们可不干改数据库这事

On 10月8日, 上午2时28分, Bill Wung <iron.feet.bill.w...@gmail.com> wrote:
> 如果用这个来满足虚荣心自认为是业绩的话,还不如自己直接修改数据库来的方便快捷,还不会给站点造成太大压力
>

Saito

unread,
Oct 8, 2009, 3:31:48 PM10/8/09
to TopLanguage
所以. .这种东西 如何能在服务端做验证. 变成了一个难题.. flash这种.. 很容易就被破解了.

On 10月8日, 下午1时52分, Tinyfool <tinyf...@gmail.com> wrote:
> 防止恶意注册关键在于服务器端验证,flash如果验证逻辑在客户端,随便就破解了,如果验证逻辑在服务器端,何必上flash这么大的客户端负担呢?
>

> 2009/10/8 四不象 <tabris17...@gmail.com>
>
> > flash破解起来要比图像识别简单
>
> > 2009/10/8 WarmC. <warm....@gmail.com>

Alex Lee

unread,
Oct 10, 2009, 2:26:49 AM10/10/09
to pon...@googlegroups.com
你使用的什么操作系统和数据库,插入15w条记录要5个小时?
如果使用sql server有可能会这样。
如果使用linux加mysql,则只要20分钟即可。

2009/10/1 Saito <saito....@gmail.com>

Cheng, Long

unread,
Oct 10, 2009, 5:00:48 AM10/10/09
to pon...@googlegroups.com
耗时间的部分应该是验证码图片的生成和存储。不过这个完全可以离线做,生成好
以后存起来慢慢用就好了。多弄几台机器分布式算也容易。
搭车问一下有没有好用的c++生成验证码图片的opensource库推荐?还是说大家都
自己用libgd + freetype之类的自己写?

Alex Lee 写道:


> 你使用的什么操作系统和数据库,插入15w条记录要5个小时?
> 如果使用sql server有可能会这样。
> 如果使用linux加mysql,则只要20分钟即可。
>

> 2009/10/1 Saito <saito....@gmail.com <mailto:saito....@gmail.com>>
>
>
> 产生验证码的效率问题是这样的... 每天产生16w个注册码. 然后入库.. 需


> 要耗费多长时间呢? ..
>
>
> 答案是5个小时...
> On 10月1日, 上午12时50分, sagasw <sag...@gmail.com

> <mailto:sag...@gmail.com>> wrote:
> > "产生验证码这个过程相当耗费资源", 快用云计算阿。
> >
> > 不过不要问我怎么用,只是觉得这个词比较搭。
> >
> > 严肃一点说,能否介绍一下你们网站的访问量到底大到什么程度,连计算
> 验证码都成了瓶颈。我是不太明白为何非要实时计算的,难道不可以在负载
> 不那么大的时候算好一 批放着,然后即用即抛么?
> >
> > 2009/9/30 Saito <saito.java...@gmail.com

> <mailto:saito.java...@gmail.com>>
> >
> >
> >
> > > 关于大型网站的恶意注册应该算是类似牛皮糖的存在. 其实就跟大型网
> 游有外挂的存在一样... 很难根治..
> >
> > > 之前我们考虑了使用控件的形式来唯一确定客户机 .但是控件会影响用
> 户体验. 所以还是撤下来了..关于验证码这方面. . 网站本身并不能做
> > > 到实时产生验证码.因为访问量巨大. 产生验证码这个过程相当耗费资
> 源.. .. ip的限制现在只能是个幌子. 因为很好伪造..
> >
> > > 不知道大家有没有这方面的经验..
>
>

Saito

unread,
Oct 11, 2009, 10:38:24 AM10/11/09
to TopLanguage

肯定不是插入数据的问题.. 验证码的生成本身是十分耗费时间的..

On Oct 10, 2:26 pm, Alex Lee <gforeverf...@gmail.com> wrote:
> 你使用的什么操作系统和数据库,插入15w条记录要5个小时?
> 如果使用sql server有可能会这样。
> 如果使用linux加mysql,则只要20分钟即可。
>
> 2009/10/1 Saito <saito.java...@gmail.com>

zerof

unread,
Oct 11, 2009, 11:43:59 PM10/11/09
to pon...@googlegroups.com


2009/10/11 Saito <saito....@gmail.com>

肯定不是插入数据的问题.. 验证码的生成本身是十分耗费时间的..

你能确定吗,通常的那些验证码不是标准文字+变形+背景融合+噪声干扰吗,根据我的知识,十万的量级应该很快生成的

Alex Lee

unread,
Oct 12, 2009, 4:17:10 AM10/12/09
to pon...@googlegroups.com
为什么不能生成几万个验证码随机挑选呢?难道每次注册都要生成唯一的验证码?

2009/10/10 Cheng, Long <long.x...@gmail.com>
Reply all
Reply to author
Forward
0 new messages