漏洞概要
关注数(24)
关注此漏洞
漏洞标题:74cms某功能注入漏洞(有条件)
提交时间:2014-03-18 19:20
修复时间:2014-06-13 19:21
公开时间:2014-06-13 19:21
漏洞类型:SQL注射漏洞
危害等级:高
自评Rank:20
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
Tags标签:
无
漏洞详情
披露状态:
2014-03-18: 细节已通知厂商并且等待厂商处理中
2014-03-28: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放
2014-05-22: 细节向核心白帽子及相关领域专家公开
2014-06-01: 细节向普通白帽子公开
2014-06-11: 细节向实习白帽子公开
2014-06-13: 细节向公众公开
简要描述:
略鸡肋,分享出来。
详细说明:
最新版v3.4,更新时间20140310
文件/plus/weixin.php
responseMsg函数,使用
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
获得了post数据。所以,可以无视GPC。
获得的数据是XML格式,我们一会发送数据包即可。
继续看该函数:
当我们获得的post数据非空时,用simplexml_load_string解析xml,复制到各个变量中。没有进行任何过滤。
继续看到:
这里有个判断,$_CFG[‘sina_apiopen’]必须不等于0 ,否则就会进入这个判断,最后exit整个文件,执行不到后面的注入的地方。所以这里是个鸡肋。
必须管理员在后台开启新浪微博登陆,才能注入。而这个功能是默认不开启的。
(不过很奇怪的是。。。这里明明是微信的相关功能。。。却验证的是新浪微博的开启状况。。。不忍吐槽)
所以,我测试的时候手动到后台开启了新浪微博功能:
这个时候,我们再继续看刚才的函数:
看到这里就清楚了,直接把keyword带入查询。而keyword就是我们通过xml传进来的Content。
漏洞证明:
管理员后台开启新浪微博登录以后,发送post数据包
其中Content-Type不能是application/x-www-form-urlencoded,改成text/html,表示传过去的是文本内容。
其中Content内容是注入代码。
查看返回数据包:
注入成功。管理员用户名+密码+salt
修复方案:
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-06-13 19:21
厂商回复:
最新状态:
暂无