漏洞概要
缺陷编号:WooYun-2013-022023
漏洞标题:易想购物(easethink)存在sql注入漏洞,附利用测试POC
相关厂商:易想购物
漏洞作者:lxsec
提交时间:2013-04-17 15:06
公开时间:2013-07-16 15:06
漏洞类型:SQL注射漏洞
危害等级:中
自评Rank:10
漏洞状态:未联系到厂商或者厂商积极忽略
Tags标签:
漏洞详情
披露状态:
2013-04-17: 积极联系厂商并且等待厂商认领中,细节不对外公开
2013-07-16: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
易想购物cms存在注入漏洞,剩下的自己YY了。
详细说明:
根目录下message.php页面存在关键字过滤不严谨的问题。出问题的代码如下
if($_REQUEST['act'] == 'add') //request获取的act变量只有这个if后面就没有判读过了,导致了注入
{
if(!$user_info)
{
showErr($GLOBALS['lang']['PLEASE_LOGIN_FIRST']);
}
.
.
.
.
else
{
$rel_table = $_REQUEST['act'];
//echo "select * from ".DB_PREFIX."message_type where type_name='".$rel_table."'"; //这句是自己添加的演示语句,一会可以查看到被注入的语句
$message_type = $GLOBALS['db']->getRowCached("select * from ".DB_PREFIX."message_type where type_name='".$rel_table."'");if(!$message_type||$message_type['is_fix']==0)
{
$message_type_list = $GLOBALS['db']->getAllCached("select * from ".DB_PREFIX."message_type where is_fix = 0 order by sort desc");
if(!$message_type_list)
{
showErr($GLOBALS['lang']['INVALID_MESSAGE_TYPE']);
}
else
{
if(!$message_type)
$message_type = $message_type_list[0];
foreach($message_type_list as $k=>$v)
{
if($v['type_name'] == $message_type['type_name'])
{
$message_type_list[$k]['current'] = 1;
}
else
{
$message_type_list[$k]['current'] = 0;
}
}
$GLOBALS['tmpl']->assign("message_type_list",$message_type_list);
}
}
.
.
.
.
.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
if($_REQUEST['act']=='add')//request获取的act变量只有这个if后面就没有判读过了,导致了注入
{
if(!$user_info)
{
showErr($GLOBALS['lang']['PLEASE_LOGIN_FIRST']);
}
.
.
.
.
else
{
$rel_table=$_REQUEST['act'];
//echo "select * from ".DB_PREFIX."message_type where type_name='".$rel_table."'"; //这句是自己添加的演示语句,一会可以查看到被注入的语句
$message_type=$GLOBALS['db']->getRowCached("select * from ".DB_PREFIX."message_type where type_name='".$rel_table."'");if(!$message_type||$message_type['is_fix']==0)
{
$message_type_list=$GLOBALS['db']->getAllCached("select * from ".DB_PREFIX."message_type where is_fix = 0 order by sort desc");
if(!$message_type_list)
{
showErr($GLOBALS['lang']['INVALID_MESSAGE_TYPE']);
}
else
{
if(!$message_type)
$message_type=$message_type_list[0];
foreach($message_type_listas$k=>$v)
{
if($v['type_name']==$message_type['type_name'])
{
$message_type_list[$k]['current']=1;
}
else
{
$message_type_list[$k]['current']=0;
}
}
$GLOBALS['tmpl']->assign("message_type_list",$message_type_list);
}
}
.
.
.
.
.
漏洞证明:
图片一句是插入自定义sql语句后生成的注入语句很明显的注入了
修复方案:
还是对关键字的过滤问题
漏洞回应
厂商回应:
未能联系到厂商或者厂商积极拒绝
漏洞Rank:13 (WooYun评价)
评价
2010-01-01 00:00 疯狗 白帽子 | Rank:22 漏洞数:2)
这个团购程序好像蛮有名气的,去年关注过,后来就没音信了,是跟团购的倒塌有影响吧