网站漏洞修复之图片验证码的详细修复方案

在对网站安全进行整体的安全检测的时候,用户登陆以及用户留言,评论,设置支付密码,以及一些网站功能方面都会用到图片验证码,针对于验证码我们SINE安全对其进行了详细的网站安全检测,以及图片验证码安全防护方面,都会详细的跟大家讲解一下。验证码分很多种,图片形式的验证码是目前网站用的最多的,还有一些短信的验证码,手机语言验证码,答题验证码,都是属于网站所用到的验证码,今天主要跟大家讲解的就是图片验证码。

1557045159194481.jpeg

首先要了解一下什么是图片验证码,英文叫"CAPTCHA",其作用就是防止用户对网站进行恶意的登陆以及暴力破解,防止一些恶意的用户对网站进行多次的重复性的攻击,比如:留言,评论,点击,刷票,尝试性的用弱口令去登陆用户的账号,针对这些网站攻击,图片验证码很好的进行了阻止,防止了恶意攻击。

图片验证码生成的流程,我们来看下这个图:

1557045160923846.png

首先用户会去请求这个图片验证码,第一次会在数据库里生成一个相应的session值,然后返回给用户一个图片验证码,客户看到图片里的验证码,会手动录入进去,并点登陆,验证码会第二次的请求到服务器中,服务器后端收到请求后会进行安全对比,与数据库里的session进行比对,如果值是一样的,那么就会判定验证码成功,反之如果不对那么就会把第一次保存的session值进行删除操作,防止机器人对其进行暴力的猜解,因为验证码唯一,只能验证一次,多次验证就会失效。

我们SINE安全在对网站验证码安全检测的同时,会出现很多安全方面的隐患,以及验证码的漏洞,比较常出现的就是网站的验证码重复利用漏洞,该验证码漏洞可以导致攻击者对其复制,重复使用一个验证码,进而对用户的账号密码进行暴力破解。攻击的特征是POST数据里的session值不变,以及验证码也不变,唯一变的就是用户的账号以及密码。

1557045160998965.png

图片验证码的默认配置导致存放位置被泄露,这个验证码漏洞的产生原因主要是把session这个值写到了网站文件目录里,以及一些cookies值都会写到图片文件里。另外一种验证码的漏洞是验证码在对比后,会再进行一次对比,导致不停的进行逻辑运算,多次的请求验证码,会导致整个验证码对比失败。

在对其他网站进行验证码安全检测时,也发现了一种验证码上的安全问题,验证验证码后,并没有将验证码删除,导致可以重复使用,应该对其验证码效验的时候进行返回MD5值,每个请求的返回都不相同,防止用户密码遭到暴力破解。

甚至目前有些网站使用的图片验证码都会遭到软件的自动识别,有些图片识别技术使用的是一些第三方的资源,会对图片里的字母进行识别并自动填入到输入框中,可以对其进行暴力破解。

针对于验证码安全的防护以及漏洞修复方案

对验证码的安全时效时间进行安全限制,一般限制30秒或者50秒之间失效,对于同一IP在同一时间进行多次的验证码请求频率上做安全防护,限制1分钟请求的次数或者是10分钟内的请求次数。对于图片验证码的图片进行噪点渲染,防止图片被团建OCR自动识别。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31542418/viewspace-2643312/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31542418/viewspace-2643312/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值