漏洞概要
关注数(24)
关注此漏洞
漏洞标题:mcms可CSRF后台getshell
提交时间:2014-05-12 18:35
修复时间:2014-05-17 18:36
公开时间:2014-05-17 18:36
漏洞类型:CSRF
危害等级:高
自评Rank:15
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
Tags标签:
无
漏洞详情
披露状态:
2014-05-12: 细节已通知厂商并且等待厂商处理中
2014-05-17: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
mcms后台某功能getshell,再加上后台没有验证token,所以可以通过csrf直接拿shell
详细说明:
先说说后台getshell吧。
后台文件auth.php是设置授权码的地方,我们看其中有一个函数:
验证权限后,获得$_POST[auth],如果与现有的AUTH_CODE不相等,就把$_POST[auth]写进去。我们再来到set_config函数,看是怎么写的:
我们看到,这里设置define里用的是双引号,这样就有了任意代码执行的条件。
比如我们写{${phpinfo()}}试试:
显示“成功设置授权码”,那么,我们访问/core/config.php看看:
可以看到,已经执行了。
漏洞证明:
再加上mcms后台操作没有csrf token,所以可以通过csrf来拿shell。
将如下代码保存到js中,插入某页面,诱导管理员访问:
菜刀已经能连了,可以看到配置文件中,一句话已经安静地躺在那里了:
修复方案:
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2014-05-17 18:36
厂商回复:
最新状态:
暂无
漏洞评价:
评论