漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-079143
漏洞标题:ThinkSNS SQL注射一枚(无视WAF)
相关厂商:ThinkSNS
漏洞作者: phith0n
提交时间:2014-10-13 10:32
修复时间:2015-01-11 10:34
公开时间:2015-01-11 10:34
漏洞类型:SQL注射漏洞
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-10-13: 细节已通知厂商并且等待厂商处理中
2014-10-13: 厂商已经确认,细节仅向厂商公开
2014-10-16: 细节向第三方安全合作伙伴开放
2014-12-07: 细节向核心白帽子及相关领域专家公开
2014-12-17: 细节向普通白帽子公开
2014-12-27: 细节向实习白帽子公开
2015-01-11: 细节向公众公开
简要描述:
开发时候发现的。
详细说明:
apps/page/Lib/Action/DiyAction.class.php 192行:
取到$_POST['channel']传入getPageInfo函数。我们看看这个函数:
光看默认值就知道,第二个参数是字段名,甚至不用考虑addslashes。
我们来试试,登录后发送如下数据包:
看看mysql执行了什么语句:
图中可以看到,我们可控的部分很多,从select 后面所有内容我们都可控。没有敏感词select,所以无视WAF。
同样的方法在这个文件中还有多处,我就不一一指出。
漏洞证明:
来构造一个盲注。看到代码:
$databaseData ['manager']传入了checkRole函数,进去看看:
如果$this->mid(就是你的uid)在$user中,则通过,否则显示“您没有管理权限”。
所以,通过是否显示“您没有管理权限”,可以来盲注。
我的$this->mid为2。>113显示“找不到方法”:
>114显示“您没有管理员权限”:
同理,注入用户密码只要改user()为password即可。
修复方案:
不知道。
版权声明:转载请注明来源 phith0n@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:10
确认时间:2014-10-13 14:14
厂商回复:
非常感谢!理论上首先要得到管理员权限。
最新状态:
暂无