验证码失效:验证码应具备合理的时效性,但如果有效期设置过长,可能导致验证码在一段时间内被重用或滥用。此外,如果验证码校验失败后未及时清除旧的验证码记录,都有可能带来安全隐患
万能验证码:研发人员为了测试方便,常会设置固定的万能验证码(如6666、123456、888888等)。但在业务上线后,由于疏忽未及时清除这些设置,从而造成验证码"可绕过"
验证码可识别:4位数验证码可通过ocr工具进行识别爆破 项目地址:https://github.com/sml2h3/ddddocr 教程:https://www.52pojie.cn/thread-1944555-1-1.html
安全编码规范:
1、有效期检查:设置验证码的有效期为1分钟,确保过期的验证码无法使用,防止攻击者重复利用
2、验证与清除:在验证完成后,无论成功或失败,都会及时清除验证码,避免被复用
3、复杂度提升:将验证码设置为6位,增加识别和破解的难度,提高攻击成本