当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2013-034858

漏洞标题:emlog验证码重用漏洞(密码爆破等影响)

相关厂商:emlog.net

漏洞作者: phith0n

提交时间:2013-08-21 08:50

修复时间:2013-11-19 08:50

公开时间:2013-11-19 08:50

漏洞类型:设计缺陷/逻辑错误

危害等级:中

自评Rank:10

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-08-21: 细节已通知厂商并且等待厂商处理中
2013-08-21: 厂商已经确认,细节仅向厂商公开
2013-08-24: 细节向第三方安全合作伙伴开放
2013-10-15: 细节向核心白帽子及相关领域专家公开
2013-10-25: 细节向普通白帽子公开
2013-11-04: 细节向实习白帽子公开
2013-11-19: 细节向公众公开

简要描述:

emlog验证码重用。可无视验证码刷评论,无视验证码暴力破解后台。

详细说明:

看了两天emlog源码也没白看。。。
在发表评论的时候,服务端验证数据代码如下:

if($Comment_Model->isLogCanComment($blogId) === false) {
emMsg('评论失败:该文章已关闭评论');
} elseif ($Comment_Model->isCommentExist($blogId, $name, $content) === true) {
emMsg('评论失败:已存在相同内容评论');
} elseif ($Comment_Model->isCommentTooFast() === true) {
emMsg('评论失败:您提交评论的速度太快了,请稍后再发表评论');
} elseif (empty($name)) {
emMsg('评论失败:请填写姓名');
} elseif (strlen($name) > 20) {
emMsg('评论失败:姓名不符合规范');
} elseif ($mail != '' && !checkMail($mail)) {
emMsg('评论失败:邮件地址不符合规范');
} elseif (ISLOGIN == false && $Comment_Model->isNameAndMailValid($name, $mail) === false) {
emMsg('评论失败:禁止使用管理员昵称或邮箱评论');
} elseif (!empty($url) && preg_match("/^(http|https)\:\/\/[^<>'\"]*$/", $url) == false) {
emMsg('评论失败:主页地址不符合规范','javascript:history.back(-1);');
} elseif (empty($content)) {
emMsg('评论失败:请填写评论内容');
} elseif (strlen($content) > 8000) {
emMsg('评论失败:内容不符合规范');
} elseif (ROLE == 'visitor' && Option::get('comment_needchinese') == 'y' && !preg_match('/[\x{4e00}-\x{9fa5}]/iu', $content)) {
emMsg('评论失败:评论内容需包含中文');
} elseif (ISLOGIN == false && Option::get('comment_code') == 'y' && session_start() && $imgcode != $_SESSION['code']) {
emMsg('评论失败:验证码错误');
} else {
$Comment_Model->addComment($name, $content, $mail, $url, $imgcode, $blogId, $pid);
}


在检查验证码时,发现验证码不对则提示验证码错误,但检查成功后并没有清除SESSION中的验证码信息,下次只要不再访问生成验证码的脚本,该SESSION则一直有效。导致此后验证码可以重用。
在后台登录页面原理相同,均未清除SESSION中的验证码,导致可以暴力破解后台密码。
-------------
利用方法:
第一次手工输入验证码后提交,burpsuite抓包,然后把服务器返回的包丢弃(以免重新打开需要输入验证码的界面,把验证码刷新掉)。
再就暴力提交数据包就OK了。因为验证码没有刷新,SESSION没有更新,所以验证码不用再次输入。

漏洞证明:

刷评论:
提交评论时候,由于emlog默认限制15秒发一条,所以在burpsuite中设置一下,每间隔大概16秒提交一次。

01.jpg


等待一段时间后看看效果:

02.jpg


暴力破解后台密码:

20130510_173103.jpg

修复方案:

检查验证码成功后清除SESSION

版权声明:转载请注明来源 phith0n@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:9

确认时间:2013-08-21 11:46

厂商回复:

确认,给暴力破解降低了难度

最新状态:

暂无