ECSHOP后台注入


Oct 13 2015

ECSHOP后台注入

首页 » 代码审计 » ECSHOP后台注入   

简要描述:

后台注入,但是要登录.............

详细说明:

upload/admin/agency.php 48行开始

code 区域
elseif ($_REQUEST['act'] == 'query')

{

    $agency_list = get_agencylist(); //跟踪这个函数

    $smarty->assign('agency_list',  $agency_list['agency']);

    $smarty->assign('filter',       $agency_list['filter']);

    $smarty->assign('record_count', $agency_list['record_count']);

    $smarty->assign('page_count',   $agency_list['page_count']);



    /* 排序标记 */

    $sort_flag  = sort_flag($agency_list['filter']);

    $smarty->assign($sort_flag['tag'], $sort_flag['img']);



    make_json_result($smarty->fetch('agency_list.htm'), '',

        array('filter' => $agency_list['filter'], 'page_count' => $agency_list['page_count']));

}



get_agencylist()函数代码如下

code 区域
function get_agencylist()

{

    $result = get_filter();//当$result为false时才能够实现。

    if ($result === false)

    {

        /* 初始化分页参数 */

        $filter = array();

        $filter['sort_by']    = empty($_REQUEST['sort_by']) ? 'agency_id' : trim($_REQUEST['sort_by']);//未过滤

        $filter['sort_order'] = empty($_REQUEST['sort_order']) ? 'DESC' : trim($_REQUEST['sort_order']);//未过滤



        /* 查询记录总数,计算分页数 */

        $sql = "SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('agency');

        $filter['record_count'] = $GLOBALS['db']->getOne($sql);

        $filter = page_and_size($filter);



        /* 查询记录 */

        $sql = "SELECT * FROM " . $GLOBALS['ecs']->table('agency') . " ORDER BY $filter[sort_by] $filter[sort_order]";//代入查询。



        set_filter($filter, $sql);

    }

    else

    {

        $sql    = $result['sql'];

        $filter = $result['filter'];

    }

    $res = $GLOBALS['db']->selectLimit($sql, $filter['page_size'], $filter['start']);//带入查询函数



    $arr = array();

    while ($rows = $GLOBALS['db']->fetchRow($res))

    {

        $arr[] = $rows;

    }



    return array('agency' => $arr, 'filter' => $filter, 'page_count' => $filter['page_count'], 'record_count' => $filter['record_count']);

}







get_filter()代码如下//传参是为空所以返回false

code 区域
function get_filter($param_str = '')

{

    $filterfile = basename(PHP_SELF, '.php');

    if ($param_str)

    {

        $filterfile .= $param_str;

    }

    if (isset($_GET['uselastfilter']) && isset($_COOKIE['ECSCP']['lastfilterfile'])

        && $_COOKIE['ECSCP']['lastfilterfile'] == sprintf('%X', crc32($filterfile)))

    {

        return array(

            'filter' => unserialize(urldecode($_COOKIE['ECSCP']['lastfilter'])),

            'sql'    => base64_decode($_COOKIE['ECSCP']['lastfiltersql'])

        );

    }

    else

    {

        return false;

    }

}

漏洞证明:

ecshop2.jpg


如果您喜欢本博客,欢迎点击图片定订阅到邮箱填写您的邮件地址,订阅我们的精彩内容:

正文部分到此结束

文章标签: echop漏洞 ecshop漏洞利用 ecshop入侵

版权声明:若无特殊注明,本文皆为( mOon )原创,转载请保留文章出处。

也许喜欢: «jsp内网探测脚本&简单代理访问 | ecshop csrf防御绕过后台敏感功能csrf getshell»

你肿么看?

你还可以输入 250/250 个字

 微笑 大笑 拽 大哭 亲亲 流汗 喷血 奸笑 囧 不爽 晕 示爱 害羞 吃惊 惊叹 爱你 吓死了 呵呵

评论信息框

这篇文章还没有收到评论,赶紧来抢沙发吧~