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

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

缺陷编号: WooYun-2015-97222

漏洞标题: 齐博CMS某处任意文件写入getshell(需要一定权限)

相关厂商: 齐博CMS

漏洞作者: phith0n认证白帽子

提交时间: 2015-02-14 15:13

公开时间: 2015-04-02 10:23

漏洞类型: 命令执行

危害等级: 高

自评Rank: 15

漏洞状态: 漏洞已经通知厂商但是厂商忽略漏洞

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

Tags标签: php源码审核 任意文件写入利用

3人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-02-14: 细节已通知厂商并且等待厂商处理中
2015-02-19: 厂商主动忽略漏洞,细节向第三方安全合作伙伴开放(绿盟科技唐朝安全巡航无声信息
2015-04-15: 细节向核心白帽子及相关领域专家公开
2015-04-25: 细节向普通白帽子公开
2015-05-05: 细节向实习白帽子公开
2015-04-02: 细节向公众公开

简要描述:

一个二次操作造成的任意文件写入。需要一定权限,自评为鸡肋。作为一个诚实的孩子,是怎样就怎样,我会把问题说的很清楚以避免误会哦~

详细说明:

只拿整站做说明,下载最新版本。

/inc/function.inc.php 1507行

code 区域
//自定义内容页文件名缓存生成
function get_showhtmltype(){
global $db,$pre,$Fid_db;
$query = $db->query("SELECT aid,htmlname FROM {$pre}article WHERE htmlname!=''");
while($rs = $db->fetch_array($query)){
$show.="\$showHtml_Type[bencandy][{$rs[aid]}]='$rs[htmlname]';\r\n";
}
foreach( $Fid_db[iftable] AS $key=>$erp){
$query = $db->query("SELECT aid,htmlname FROM {$pre}article$erp WHERE htmlname!=''");
while($rs = $db->fetch_array($query)){
$show.="\$showHtml_Type[bencandy][{$rs[aid]}]='$rs[htmlname]';\r\n";
}
}
write_file(ROOT_PATH."data/showhtmltype.php","<?php\r\n".$show.'?>');
}



一个生成什么页面的函数。我们看到,其中将htmlname从数据库中取出,直接放入$show.="\$showHtml_Type[bencandy][{$rs[aid]}]='$rs[htmlname]';\r\n";。那么htmlname只要闭合前面的引号(因为是二次操作,所以不需要考虑全局的addslashes),就能造成PHP代码最后写入ROOT_PATH."data/showhtmltype.php"文件。

我们看到这个函数在哪里调用:

屏幕快照 2015-02-13 下午11.58.54.png



屏幕快照 2015-02-13 下午11.59.06.png



如上两图,实际上就是在增加文章、修改文章两个过程中调用的。

而默认情况下,注册用户是可以给“美女欣赏”这个栏目投稿,也就是增加文章的。但我们还需要一个权限,必须能“自定义内容页文件名”,需要后台给某些用户组开启这个权限:

屏幕快照 2015-02-13 下午11.30.20.png



具体操作方法见“漏洞证明”

漏洞证明:

首先我的用户组是有相关权限了。投稿给“美女欣赏”这个栏目。

我选择在修改文章的时候进行getshell。新投稿一篇文章,来到**.**.**.**/qibocms/member/post.php?job=edit&fid=10&aid=666,aid是我这篇文章的id。这里有“自定义文件名”:

屏幕快照 2015-02-14 上午12.07.30.png



如上图,在其他设置里,将自定义文件名用单引号闭合后,插入shell。需要以.html结尾。提交。

**.**.**.**/qibocms/data/showhtmltype.php可见已经getshell:

屏幕快照 2015-02-14 上午12.11.13.png

修复方案:

不知道

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


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2015-04-02 10:23

厂商回复:

漏洞Rank:10 (WooYun评价)

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):
登陆后才能进行评分

评价

  1. 2015-02-14 15:19 | 黄口小儿 ( 普通白帽子 | Rank:163 漏洞数:49 | coffeesafe的号子)
    0

    膜拜p神

  2. 2015-02-14 15:20 | 玉林嘎 认证白帽子 ( 普通白帽子 | Rank:933 漏洞数:107 )
    0

    给跪

  3. 2015-02-14 16:12 | 小飞 ( 实习白帽子 | Rank:52 漏洞数:12 | 挖洞对于16岁的我来说实在是太艰难了!)
    0

    师傅实在影射某人嘛

  4. 2015-02-14 16:21 | ′雨。 认证白帽子 ( 普通白帽子 | Rank:1332 漏洞数:198 | Only Code Never Lie To Me.)
    0

    目测是需要$webdb[xxxx]为1

  5. 2015-02-14 22:37 | 麦香浓郁 ( 路人 | Rank:8 漏洞数:3 | 前排膜拜乌云ph m锅 凤凰 a11 dot 各种师傅)
    0

    师傅说发洞就发洞 6666

  6. 2015-02-15 11:00 | phith0n 认证白帽子 ( 普通白帽子 | Rank:804 漏洞数:125 | 一个想当文人的黑客~)
    0

    @′雨。 我发现齐博只确认你的洞啊。。难不成他乌云号被你黑了~~>.<

  7. 2015-02-15 12:02 | ′雨。 认证白帽子 ( 普通白帽子 | Rank:1332 漏洞数:198 | Only Code Never Lie To Me.)
    0

    @phith0n 没啊 已经放假了。 - - 看了公告 他昨天刚放假。。 哈哈。、3月1号就可以了。

  8. 2015-02-15 12:03 | ′雨。 认证白帽子 ( 普通白帽子 | Rank:1332 漏洞数:198 | Only Code Never Lie To Me.)
    0

    @′雨。 各位尊敬的齐博用户:   为了让我公司全体同仁能提前回家,开开心心与家人度过一个欢乐祥和的春节,根据《国务院办公厅关于2015年部分节假日安排的通知》相关内容,结合我公司实际情况,经研究决定,我公司2015年春节放假安排如下:   我公司春节放假时间为2015年2月14日至3月1日,共16天。其中2月18日至24日为 师傅又悲剧了。。

  9. 2015-02-15 12:40 | phith0n 认证白帽子 ( 普通白帽子 | Rank:804 漏洞数:125 | 一个想当文人的黑客~)
    0

    @′雨。 哭了。。。忽略忽略加忽略

登录后才能发表评论,请先 登录