在整个网站的安全渗透测试中,网站的验证码绕过漏洞发生的也比较常见,一般程序员在
设计整个验证码功能的时候并没有详细的考虑到会被构造恶意的参数进行直接提交,导致服务器
端没有做过滤,直接绕过验证码的验证过程,一般发生在网站里找回密码功能,以及用户注册功
能,修改重要资料需要验证码验证。 网站里的验证码分很多种,图形验证码、短信验证码、手拉验证码。像图形验证码在获取之后,
而数据库里历史获取到的验证码还是可以继续正常用,这就造成了网站可以绕过验证码的功能,
直接使用该网站的功能,有可能造成的攻击危害是不断的提交注册,导致数据库里的会员账号
增多,大量的机器人注册,给服务器以及数据库造成了堵塞。
再一个图形验证码被绕过,是可以被机器人软件自动识别,并自动输入验证码提交到网站里,
这种攻击是明显的图形识别绕过。还有一个就是手机短信验证码的绕过,一般找回密码的时候
会先请求输入手机号,然后来获取验证码,但是有些客户收到的短信验证码是以3-7位数字的
验证码,如果用机器跑很快就可以猜解出来的。
还有一种被绕过的情况,就是手机短信验证码,根本不起作用,直接在POST数据包里把手机
验证码的值设置为空,或者去掉这个字段,就直接绕过。 有些大型的电商网站,一般的手机短信验证码时效性是10分钟,但是在这10分钟里获取的验
证码都是一样的,如果在8分钟的时候再获取一次,也就是说时效性又大大的延长了10分钟,
因为一直可以使用该验证码,那么我们就可以用软件去猜解该短信验证码,猜解出来就可以
正常的使用会员的找回密码,修改重要资料的功能了。 有些攻击者会对手机短信验证码进行任意发送,导致用户的手机号被短信骚扰,严重的话会
影响网站运营者的经济损失,因为发送一条短信验证码给客户,运营者会给验证码提供商付
费,一条短信大约1-3分钱一条,如果攻击者利用无限发送短信验证码漏洞,发送一万条短信
出去,那么损失来了。
验证码绕过漏洞修复建议:
程序员设计该验证码的功能流程一般是这样的,先判断用户的手机号是否为正常的手机号长
度,再一个判断手机号里是否掺杂一些恶意的参数,这一步过来后,就直接发送验证码给手
机。但是在这样的设计流程里,会导致出现验证码绕过直接发送的漏洞、建议程序员在设计
该功能的时候,加上过滤条件,多去判断一下,比如手机号发送,间隔1分钟,服务器端检
查是否发送的都是同一个手机号等等。
还没有评论,来说两句吧...