首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>漏洞资料>文章内容
DEDECMS 0DAY
来源:vfocus.net 作者:心灵 发布时间:2011-01-26  

无聊之中想出来的0DAY (反正最后能拿下WEBSHELL都叫0DAY把)
但前提要求条件比较苛刻 看完就明白
经典对白 看代码
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的同时也登录DZ
                        if($uid > 0) {
                                $password = md5($password);
                                //当UC存在用户,而CMS不存在时,就注册一个       
                                if(!$rs) {   //如果DEDECMS登录不成功
                                        //会员的默认金币
                                        $row = $dsql->GetOne("SELECT `money`,`scores` FROM `#@__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 #@__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的方法之一

 

By:心灵



 
[推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·XSOK环境变量本地命令执行漏洞
·N点虚拟主机管理系统 致命漏洞。
·南方数据企业网站管理系统V10.0
·动网(DVBBS)Version 8.2.0 后
·Solaris 10 telnet漏洞及解决
·破解无线路由器密码,常见无线密
·Nginx %00空字节执行php漏洞
·WinWebMail、7I24提权漏洞
·XPCD xpcd-svga本地缓冲区溢出漏
·Struts2多个漏洞简要分析
·ecshop2.72 api.php 文件鸡肋注
·Discuz!后台拿Webshell 0day
  相关文章
·DEDECMS恶作剧漏洞&任意修改文章
·UCenter Home 2.0 鸡叻 SQL 注入
·HDWiKi V 5.0 本地包含0Day
·Exploit Linux Kernel Slub Over
·风神新闻管理静态版1.7漏洞
·EimsCms v5.0 XSS+CSRF=GetShell
·深圳迪蒙网络科技企业网站管理系
·华夏外挂下载系统2.0漏洞利用
·ecshop支付漏洞最新可用EXP利用
·Diy-Page v8.2 两个注入漏洞分析
·ecshop最新版(v2.72) 本地包含漏
·动网(DVBBS)Version 8.2.0 后
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved