前天网站被恶意注册,平均一秒钟被注册三个账号,看了看程序没有问题,加上验证码就应该可以了解决了,我加的验证码是通过ajax验证的,应该可以解决了,但是出乎意料的是,没有起到任何作用,后来找到原因是后台程序里面没有验证验证码。为什么会犯这个错误呢,想了想,最后总结出来两条:
一、没有把用户想的过分邪恶。
思想里面还是用正常的套路来思考用户注册,肯定是解决不了问题的。用户远比你想的厉害,不要把任何机会留给用户犯错误,而且永远不要忘记后端验证,只有自己控制的东西才是安全的。
二、没有应用其他方式提交表单的经验。
今天以前还没有仔细思考这个问题,到底别人是怎么做到不通过验证提交表单的?通过同事用curl和我自己用fsocketopen方式,发现提交表单他妈的太容易了。没有验证码的表单基本上都没有什么安全可言。总是把安全挂在嘴边,却又弄湿了鞋子。道行不够,继续修行吧。
技术是随时都有可能被人超过的,关键是思想。晓帅总说没有什么问题解决不了,的确,而且我还要加半句,只有解决不了问题的人。其实每次遇到问题都是一个自我提升的最佳机会,不要总是在问题解决了才恍然大悟,主动去想,去实践,才能把机会把握在手中。