十四、不安全的验证码(Insecure CAPTCHA)-Low
大约 1 分钟
十四、不安全的验证码(Insecure CAPTCHA)-Low
一、漏洞原理
1.1CAPTCHA介绍
CAPTCHA全称为Completely Automated Public Turing Test to Tell Computers and Humans Apart,即全自动区分计算机和人类的图灵测试,通常被称为验证码。
CAPTCHA常以验证码、拼图等形式来识别是人在操作和机器在操作,这些验证方式的特点在于人可以轻松通过验证,但是机器很难通过验证。添加CAPTCHA的目的在于防止自动化脚本的恶意行为,比如刷单、抢票、爬虫等。
不安全的验证码漏洞属于逻辑漏洞,平台在对验证码进行验证时,流程设计上存在漏洞,容易被攻击者绕过。
1.2Low级别源码分析
通过对Low级别源码分析可以知道,修改密码的功能分为了独立的两步:当step=1时验证CAPTCHA的值是否正确;当step=2时判断两次输入的新密码是否一致,一致则密码修改成功。
我们通过Burpsuite进行抓包,修改step参数的值来绕过对CAPTCHA值的验证。
二、漏洞利用
1.输入新密码后使用Burpsuite抓包,找到step参数的值。
2.修改step参数的值为2并转发(Forward)数据包。
三、防御手段
将CAPTCHA值的校验和密码的修改操作关联起来,同时增加初始密码的校验,初始密码输入正确后执行密码修改操作。
Loading...