CMS V5.7 SP2 后台Getshell


发布人:1713486923分类:漏洞播报浏览量:919发布时间:2018-05-18

dede/sys_info.php中

//保存配置的改动

if($dopost=="save")

{

    if(!isset($token)){

        echo 'No token found!';

        exit;

    }

    if(strcasecmp($token, $_SESSION['token']) != 0){

        echo 'Token mismatch!';

        exit;

    }

    foreach($_POST as $k=>$v)

    {

        if(preg_match("#^edit___#", $k))

        {

            $v = cn_substrR(${$k}, 1024);

        }

        else

        {

            continue;

        }

        $k = preg_replace("#^edit___#", "", $k);

        $dsql->ExecuteNoneQuery("UPDATE `#@__sysconfig` SET `value`='$v' WHERE varname='$k' ");

    }

    ReWriteConfig();

    ShowMsg("成功更改站点配置!", "sys_info.php");

    exit();

}

在选择更改配置后,通过foreach($_POST as $k=>$v)接受参数,并且将参数内容写入了数据库,之后进入ReWriteConfig();。

//更新配置函数

function ReWriteConfig()

{

    global $dsql,$configfile;

    if(!is_writeable($configfile))

    {

        echo "配置文件'{$configfile}'不支持写入,无法修改系统配置参数!";

        exit();

    }

    $fp = fopen($configfile,'w');

    flock($fp,3);

    fwrite($fp,"<"."?php\r\n");

    $dsql->SetQuery("SELECT `varname`,`type`,`value`,`groupid` FROM `#@__sysconfig` ORDER BY aid ASC ");

    $dsql->Execute();

    while($row = $dsql->GetArray())

    {

        if($row['type']=='number')

        {

            if($row['value']=='') $row['value'] = 0;

            fwrite($fp,"\${$row['varname']} = ".$row['value'].";\r\n");

        }

        else

        {

            fwrite($fp,"\${$row['varname']} = '".str_replace("'",'',$row['value'])."';\r\n");

        }

    }

    fwrite($fp,"?".">");

    fclose($fp);

}

这里的代码将前面插入数据库的数据直接取出,没有再做验证。在while($row = $dsql->GetArray()),有两个分支,当$row['type']=='number'时,会往文件中直接写入,其他情况下会进行一次str_replace("'",'',$row['value'])将单引号替换掉。所以我们考虑使用第一个分支,选择一个默认为数字的参数。

比如使用参数cfg_ftp_port,它表示采用的ftp端口,

5.png


我们填入值为21;phpinfo



6.png

查看配置文件 data/config.cache.inc.php

7.png

被黑站点统计 - 文章版权1、本主题所有言论和图片纯属会员个人意见,与本文章立场无关
2、本站所有主题由该文章作者发表,该文章作者与被黑站点统计享有文章相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该文章作者和被黑站点统计的同意
4、文章作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、被黑站点统计管理员有权不事先通知发贴者而删除本文

免责声明

本站主要通过网络搜集国内被黑网站信息,统计分析数据,为部署安全型网络提供强有力的依据.本站所有工作人员均不参与黑站,挂马或赢利性行为,所有数据均为网民提供,提交者不一定是黑站人,所有提交采取不记名,先提交先审核的方式,如有任何疑问请及时与我们联系.

1713486923  的文章


微信公众号

微信公众号


Copyright © 2012-2022被黑网站统计系统All Rights Reserved
页面总访问量:20221631(PV) 页面执行时间:67.786(MS)
  • xml
  • 网站地图