河北网络安全博客

河北博客是一个关注网络安全、网站设计、网站推广、网站优化SEO、网站建设的河北地方博客。

« 河北博客:织梦CMS(DedeCMS) 首页图文连续滚动效果河北博客:Z-BLOG添加面包屑导航的方法 »

河北博客:最新DEDECMS 漏洞0day 影响版本(dede5.5、dede5.6)

发布作者:心灵

影响版本:dedecms
官方网站:http://www.dedecms.com

漏洞类型:设计错误
漏洞描述:

漏洞代码:

member\index_do.php

else if($fmdo=='login')   // http://127.0.0.1/member/index_do.php?fmdo=login&dopost=login   就来到这步了   {   //用户登录   if($dopost=="login")   {   if(!isset($vdcode))   {   $vdcode = '';   }   $svali = GetCkVdValue();   if(preg_match("/2/",$safe_gdopen)){   if(strtolower($vdcode)!=$svali || $svali=='')   {   ResetVdValue();   ShowMsg('验证码错误!', '-1');   exit();   }    }   if(CheckUserID($userid,'',false)!='ok')   {   ShowMsg("你输入的用户名 {$userid} 不合法!","-1");   exit();   }   if($pwd=='')   {   ShowMsg("密码不能为空!","-1",0,2000);   exit();   }    //检查帐号   $rs = $cfg_ml->CheckUser($userid,$pwd);    //检测用户名密码 这里不会出现提示错误 因为还要运行下面代码   #api{{   if(defined('UC_API') && @include_once DEDEROOT.'/uc_client/client.php')   {   //苛刻条件之一 已经整合DZ 并安装了UCCLIENT这个插件//检查帐号list($uid, $username, $password, $email) = uc_user_login($userid, $pwd);//登录DEDECMS的同时也登录DZif($uid > 0) {$password = md5($password);//当UC存在用户,而CMS不存在时,就注册一个if(!$rs) { //如果DEDECMS登录不成功//会员的默认金币$row = $dsql->GetOne("SELECT `money`,`scores` FROM `dede_arcrank` WHERE `rank`='10' ");$scores = is_array($row) ? $row['scores'] : 0;$money = is_array($row) ? $row['money'] : 0;$logintime = $jointime = time();$loginip = $joinip = GetIP();$res = $dsql->ExecuteNoneQuery("INSERT INTO dede_member SET `mtype`='个人',`userid`='$username',`pwd`='$password',`uname`='$username',`sex`='男' ,`rank`='10',`money`='$money', `email`='$email', `scores`='$scores', `matt`='0', `face`='',`safequestion`='0',`safeanswer`='', `jointime`='$jointime',`joinip`='$joinip',`logintime`='$logintime',`loginip`='$loginip';"); //漏洞就这样形成了 当DZ的用户全在的话 就会建立到DEDECMS里
经测试 只有密码替换!

简单来说 登录DEDECMS验证就是
如果DEDE账号登录成功 就同时登录DZ 如果DZ登录不成功 就在DZ建立一个一样账号密码的
反之 登录DEDECMS不成功 就在DZ里提取账号 登录成功了就把账号密码写入DEDECMS

利用前提条件
第一 整合DZ
第二 管理员账号不能是ADMIN 因为DZ管理员默认也是ADMIN
第三 DEDE那边管理员没从前台登录。。和知道管理员账号

这样在DZ里注册一个和DEDE一样的管理员账号 然后从DEDE那里登录 就覆盖了DEDE的管理员密码
然后修改基本资料 改一次密码 就覆盖了后台密码 然后就可以登录后台直接拿WEBSHELL

总的来说 条件苛刻! 但也是有可能拿下WEBSHELL的方法之一




发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

订阅河北博客

  • 订阅我的博客:订阅我的博客
  • 关注新浪微博:关注新浪微博
  • 关注腾讯微博:关注腾讯微博
  • google reader
  • 鲜果
  • 抓虾
  • QQ邮箱

河北博客站内搜索

河北博客相关链接

河北博客热文排行

最近发表

Powered By kingwq's blog

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循“署名-非商业用途-保持一致”的创作共用协议.
This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.冀ICP备09002514号.Copyright www.kingwq.cn.2010