验证码只做前端校验后端不查,脚本一天灌了三千个垃圾账号发广告
18年做本地租房论坛,加了注册功能,我图省事,验证码只在前端JS里做校验,用户输错验证码,前端弹提示不让提交,我当时觉得这就够了,后端根本没做验证码校验。上线没三天,论坛用户突然发消息说注册区全是发广告的,我登后台一看,用户列表里一天之内多了三千多个新注册的账号,昵称全是代开发票、澳门赌博之类的,发的帖子全是广告链接,我当时人都傻了。 我翻日志才知道,有人写了个注册脚本,直接绕过前端的JS校验,根本不管验证码输的是什么,直接向后端发注册请求,后端因为没做验证码校验,来一个请求就注册一个账号,一天就灌了三千个垃圾账号。我当时赶紧在后端加上了验证码校验,每个注册请求必须带着正确的验证码值,和session里的验证码比对正确才允许注册,脚本再发请求,全被后端拦下来,再也注册不了新账号。然后我花了整整一天,把这三千个垃圾账号和对应的广告帖子全删完,论坛才恢复正常。 之前总觉得验证码在前端做了校验,挡住用户输错就行,根本不知道前端的JS校验,脚本直接就能绕过,后端不查,你那验证码就是个摆设,机器人想注册多少就注册多少。从那之后我做注册功能,验证码全在后端校验,前端只是做个提示,真正的校验在后端,再也没被脚本灌过垃圾账号。 很多新手做注册功能跟我当初一样,验证码只做前端校验,觉得挡住用户就行,根本不知道脚本直接绕过前端,一天灌你几千个垃圾账号,发得满论坛都是广告。真的,验证码一定要在后端做校验,别只做前端样子,不然机器人灌得你删都删不完。
本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。
0