首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>漏洞资料>文章内容
ecshop SQL注射漏洞
来源:vfocus.net 作者:vfocus 发布时间:2010-08-23  

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

function get_package_info($id)

{

    global $ecs, $db,

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

function add_package_to_cart($package_id, $num = 1)

{

    $GLOBALS['err']->clean();

    /* 取得礼包信息 */

    $package = get_package_info($package_id);

    if (empty($package))

    {

        $GLOBALS['err']->add($GLOBALS['_LANG']['goods_not_exists'], ERR_NOT_EXISTS);

        return false;

    }


在flow.php中存在可控的输入源

$package = $json->decode(

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

function get_package_info($id)

{

    global $ecs, $db,

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

function add_package_to_cart($package_id, $num = 1)

{

    $GLOBALS['err']->clean();

    /* 取得礼包信息 */

    $package = get_package_info($package_id);

    if (empty($package))

    {

        $GLOBALS['err']->add($GLOBALS['_LANG']['goods_not_exists'], ERR_NOT_EXISTS);

        return false;

    }


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

CFG; $now = gmtime(); $sql = "SELECT act_id AS id, act_name AS package_name, goods_id , goods_name, start_time, end_time, act_desc, ext_info". " FROM " . $GLOBALS['ecs']->table('goods_activity') . " WHERE act_id='$id' AND act_type = " . GAT_PACKAGE; $package = $db->GetRow($sql); /* 将时间转成可阅读格式 */ if ($package['start_time'] <= $now && $package['end_time'] >= $now) { $package['is_on_sale'] = "1"; } else { $package['is_on_sale'] = "0"; } $package['start_time'] = local_date('Y-m-d H:i', $package['start_time']); $package['end_time'] = local_date('Y-m-d H:i', $package['end_time']); $row = unserialize($package['ext_info']); unset($package['ext_info']); if ($row) { foreach ($row as $key=>$val) { $package[$key] = $val; } } $sql = "SELECT pg.package_id, pg.goods_id, pg.goods_number, pg.admin_id, ". " g.goods_sn, g.goods_name, g.market_price, g.goods_thumb, g.is_real, ". " IFNULL(mp.user_price, g.shop_price * '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[discount]') AS rank_price " . " FROM " . $GLOBALS['ecs']->table('package_goods') . " AS pg ". " LEFT JOIN ". $GLOBALS['ecs']->table('goods') . " AS g ". " ON g.goods_id = pg.goods_id ". " LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ". "ON mp.goods_id = g.goods_id AND mp.user_rank = '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[user_rank]' ". " WHERE pg.package_id = " . $id. " ". " ORDER BY pg.package_id, pg.goods_id"; $goods_res = $GLOBALS['db']->getAll($sql); $market_price = 0;


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

POST['package_info']); /* 如果是一步购物,先清空购物车 */ if (

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

function get_package_info($id)

{

    global $ecs, $db,

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

function add_package_to_cart($package_id, $num = 1)

{

    $GLOBALS['err']->clean();

    /* 取得礼包信息 */

    $package = get_package_info($package_id);

    if (empty($package))

    {

        $GLOBALS['err']->add($GLOBALS['_LANG']['goods_not_exists'], ERR_NOT_EXISTS);

        return false;

    }


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

CFG; $now = gmtime(); $sql = "SELECT act_id AS id, act_name AS package_name, goods_id , goods_name, start_time, end_time, act_desc, ext_info". " FROM " . $GLOBALS['ecs']->table('goods_activity') . " WHERE act_id='$id' AND act_type = " . GAT_PACKAGE; $package = $db->GetRow($sql); /* 将时间转成可阅读格式 */ if ($package['start_time'] <= $now && $package['end_time'] >= $now) { $package['is_on_sale'] = "1"; } else { $package['is_on_sale'] = "0"; } $package['start_time'] = local_date('Y-m-d H:i', $package['start_time']); $package['end_time'] = local_date('Y-m-d H:i', $package['end_time']); $row = unserialize($package['ext_info']); unset($package['ext_info']); if ($row) { foreach ($row as $key=>$val) { $package[$key] = $val; } } $sql = "SELECT pg.package_id, pg.goods_id, pg.goods_number, pg.admin_id, ". " g.goods_sn, g.goods_name, g.market_price, g.goods_thumb, g.is_real, ". " IFNULL(mp.user_price, g.shop_price * '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[discount]') AS rank_price " . " FROM " . $GLOBALS['ecs']->table('package_goods') . " AS pg ". " LEFT JOIN ". $GLOBALS['ecs']->table('goods') . " AS g ". " ON g.goods_id = pg.goods_id ". " LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ". "ON mp.goods_id = g.goods_id AND mp.user_rank = '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[user_rank]' ". " WHERE pg.package_id = " . $id. " ". " ORDER BY pg.package_id, pg.goods_id"; $goods_res = $GLOBALS['db']->getAll($sql); $market_price = 0;


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

CFG['one_step_buy'] == '1') { clear_cart(); } /* 商品数量是否合法 */ if (!is_numeric($package->number) || intval($package->number) <= 0) { $result['error'] = 1; $result['message'] =

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

function get_package_info($id)

{

    global $ecs, $db,

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

function add_package_to_cart($package_id, $num = 1)

{

    $GLOBALS['err']->clean();

    /* 取得礼包信息 */

    $package = get_package_info($package_id);

    if (empty($package))

    {

        $GLOBALS['err']->add($GLOBALS['_LANG']['goods_not_exists'], ERR_NOT_EXISTS);

        return false;

    }


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

CFG; $now = gmtime(); $sql = "SELECT act_id AS id, act_name AS package_name, goods_id , goods_name, start_time, end_time, act_desc, ext_info". " FROM " . $GLOBALS['ecs']->table('goods_activity') . " WHERE act_id='$id' AND act_type = " . GAT_PACKAGE; $package = $db->GetRow($sql); /* 将时间转成可阅读格式 */ if ($package['start_time'] <= $now && $package['end_time'] >= $now) { $package['is_on_sale'] = "1"; } else { $package['is_on_sale'] = "0"; } $package['start_time'] = local_date('Y-m-d H:i', $package['start_time']); $package['end_time'] = local_date('Y-m-d H:i', $package['end_time']); $row = unserialize($package['ext_info']); unset($package['ext_info']); if ($row) { foreach ($row as $key=>$val) { $package[$key] = $val; } } $sql = "SELECT pg.package_id, pg.goods_id, pg.goods_number, pg.admin_id, ". " g.goods_sn, g.goods_name, g.market_price, g.goods_thumb, g.is_real, ". " IFNULL(mp.user_price, g.shop_price * '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[discount]') AS rank_price " . " FROM " . $GLOBALS['ecs']->table('package_goods') . " AS pg ". " LEFT JOIN ". $GLOBALS['ecs']->table('goods') . " AS g ". " ON g.goods_id = pg.goods_id ". " LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ". "ON mp.goods_id = g.goods_id AND mp.user_rank = '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[user_rank]' ". " WHERE pg.package_id = " . $id. " ". " ORDER BY pg.package_id, pg.goods_id"; $goods_res = $GLOBALS['db']->getAll($sql); $market_price = 0;


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

LANG['invalid_number']; } else { /* 添加到购物车 */ if (add_package_to_cart($package->package_id, $package->number)) { if (

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

function get_package_info($id)

{

    global $ecs, $db,

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

function add_package_to_cart($package_id, $num = 1)

{

    $GLOBALS['err']->clean();

    /* 取得礼包信息 */

    $package = get_package_info($package_id);

    if (empty($package))

    {

        $GLOBALS['err']->add($GLOBALS['_LANG']['goods_not_exists'], ERR_NOT_EXISTS);

        return false;

    }


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

CFG; $now = gmtime(); $sql = "SELECT act_id AS id, act_name AS package_name, goods_id , goods_name, start_time, end_time, act_desc, ext_info". " FROM " . $GLOBALS['ecs']->table('goods_activity') . " WHERE act_id='$id' AND act_type = " . GAT_PACKAGE; $package = $db->GetRow($sql); /* 将时间转成可阅读格式 */ if ($package['start_time'] <= $now && $package['end_time'] >= $now) { $package['is_on_sale'] = "1"; } else { $package['is_on_sale'] = "0"; } $package['start_time'] = local_date('Y-m-d H:i', $package['start_time']); $package['end_time'] = local_date('Y-m-d H:i', $package['end_time']); $row = unserialize($package['ext_info']); unset($package['ext_info']); if ($row) { foreach ($row as $key=>$val) { $package[$key] = $val; } } $sql = "SELECT pg.package_id, pg.goods_id, pg.goods_number, pg.admin_id, ". " g.goods_sn, g.goods_name, g.market_price, g.goods_thumb, g.is_real, ". " IFNULL(mp.user_price, g.shop_price * '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[discount]') AS rank_price " . " FROM " . $GLOBALS['ecs']->table('package_goods') . " AS pg ". " LEFT JOIN ". $GLOBALS['ecs']->table('goods') . " AS g ". " ON g.goods_id = pg.goods_id ". " LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ". "ON mp.goods_id = g.goods_id AND mp.user_rank = '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[user_rank]' ". " WHERE pg.package_id = " . $id. " ". " ORDER BY pg.package_id, pg.goods_id"; $goods_res = $GLOBALS['db']->getAll($sql); $market_price = 0;


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

CFG['cart_confirm'] > 2)



$package->package_id来源于输入

CFG; $now = gmtime(); $sql = "SELECT act_id AS id, act_name AS package_name, goods_id , goods_name, start_time, end_time, act_desc, ext_info". " FROM " . $GLOBALS['ecs']->table('goods_activity') . " WHERE act_id='$id' AND act_type = " . GAT_PACKAGE; $package = $db->GetRow($sql); /* 将时间转成可阅读格式 */ if ($package['start_time'] <= $now && $package['end_time'] >= $now) { $package['is_on_sale'] = "1"; } else { $package['is_on_sale'] = "0"; } $package['start_time'] = local_date('Y-m-d H:i', $package['start_time']); $package['end_time'] = local_date('Y-m-d H:i', $package['end_time']); $row = unserialize($package['ext_info']); unset($package['ext_info']); if ($row) { foreach ($row as $key=>$val) { $package[$key] = $val; } } $sql = "SELECT pg.package_id, pg.goods_id, pg.goods_number, pg.admin_id, ". " g.goods_sn, g.goods_name, g.market_price, g.goods_thumb, g.is_real, ". " IFNULL(mp.user_price, g.shop_price * '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[discount]') AS rank_price " . " FROM " . $GLOBALS['ecs']->table('package_goods') . " AS pg ". " LEFT JOIN ". $GLOBALS['ecs']->table('goods') . " AS g ". " ON g.goods_id = pg.goods_id ". " LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp ". "ON mp.goods_id = g.goods_id AND mp.user_rank = '

在Ecshop中缺乏对参数的有效过滤,导致一个SQL注射漏洞,成功利用该漏洞的攻击者可以获得数据库及站点的完全权限

在include_libcommon.php中存在如下函数

___FCKpd___0


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入

SESSION[user_rank]' ". " WHERE pg.package_id = " . $id. " ". " ORDER BY pg.package_id, pg.goods_id"; $goods_res = $GLOBALS['db']->getAll($sql); $market_price = 0;


其中$id没有经过严格过滤就直接进入了SQL查询,导致一个SQL注射漏洞。

漏洞证明:

在系统的lib_order.php中存在一个该函数的调用

___FCKpd___1


在flow.php中存在可控的输入源

___FCKpd___2



$package->package_id来源于输入


 
[推荐] [评论(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
  相关文章
·新版搜狗输入法已修复多个安全漏
·discuz 7.x xss 反射型exploit
·请下载新版工行个人网银
·dvbbs php2.0 多个漏洞
·Microsoft IE 8 toStaticHTML()
·FreeBSD Kernel mountnfs() 漏洞
·Dedecms <= V5.6 Final模板执行
·dedecms5.3--5.6通杀执行漏洞
·dedecms v5.3-v5.6 Get Shell 0d
·FreeBSD Kernel nfs_mount漏洞分
·Windows Win32k.sys 窗口创建漏
·最新 phpcms 0day(图)
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved