漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0110497
漏洞标题:ThinkPHP 默认配置导致验证码暴力破解
相关厂商:ThinkPHP
漏洞作者: 路人甲
提交时间:2015-04-26 18:29
修复时间:2015-07-25 23:06
公开时间:2015-07-25 23:06
漏洞类型:设计缺陷/逻辑错误
危害等级:低
自评Rank:5
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-04-26: 细节已通知厂商并且等待厂商处理中
2015-04-26: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2015-06-20: 细节向核心白帽子及相关领域专家公开
2015-06-30: 细节向普通白帽子公开
2015-07-10: 细节向实习白帽子公开
2015-07-25: 细节向公众公开
简要描述:
ThinkPHP 默认配置导致验证码暴力破解
详细说明:
最近用Thinkphp时发现,验证码类默认的check函数在检查完验证码是否正确后,并未重置session,导致可被暴力破解。
写这样的代码,再看看Verify类的check函数,
配置里的reset是在验证码正确的情况下才重置session,验证码错了并不会重置session。这样只要用burp intruder就可以暴力破解验证码。
相信很多开发者都忽略了这一点,
从TP官网的案例随便找几个TP开发的列子试试吧
http://oa.0796z.com/index.php/Oa/Login/index
http://www.jz07.cn/Home/Index/index.html
可以看到验证码都成了鸡肋。
漏洞证明:
从TP官网的案例随便找几个TP开发的列子试试吧
http://oa.0796z.com/index.php/Oa/Login/index
http://www.jz07.cn/Home/Index/index.html
修复方案:
check函数里面强制重置session
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2015-07-25 23:06
厂商回复:
这是开发的问题 验证码错误后的处理机制是留给应用自己设计,框架强制做了处理是不合适的开发体验。合理的方式就是 验证码错误后重新生成验证码。不要把什么问题都归结为框架的漏洞。
最新状态:
暂无