齐博CMS b2b系统 二次注入

作者:hack1990 时间:14-09-18 阅读数:704人阅读

源码此处下载 http://down.qibosoft.com/down.php?v=b2b


在hy/member/homapage_ctrl/info.php中


$db->query("INSERT INTO `{$_pre}company_fid` VALUES $values");

$title=filtrate($title);

$picurl=filtrate($picurl);

$fname=filtrate($fname);

$my_trade=filtrate($my_trade);

$qy_cate=filtrate($qy_cate);

$qy_regmoney=filtrate($qy_regmoney);

$qy_saletype=filtrate($qy_saletype);

$qy_pro_ser=filtrate($qy_pro_ser);

$my_buy=filtrate($my_buy);

$qy_regplace=filtrate($qy_regplace);

$db->query("UPDATE `{$_pre}company` SET

`title`='$title',

`picurl`='$picurl',

`fname`='$fname',

`province_id`='{$province_id}',

`city_id`='{$postdb[city_id]}',

`zone_id`='{$postdb[zone_id]}',

`street_id`='{$postdb[street_id]}',

`my_trade`='$my_trade',

`qy_cate`='$qy_cate',

`qy_regmoney`='$qy_regmoney',

`qy_saletype`='$qy_saletype',

`qy_createtime`='$qy_createtime',

`qy_pro_ser`='$qy_pro_ser',

`my_buy`='$my_buy',

`qy_regplace`='$qy_regplace'

WHERE uid='$uid'");

$title=filtrate($title); 这里进行了个过滤


function filtrate($msg){

//$msg = str_replace('&','&',$msg);

//$msg = str_replace(' ',' ',$msg);

$msg = str_replace('"','"',$msg);

$msg = str_replace("'",''',$msg);

$msg = str_replace("<","<",$msg); $msg = str_replace(">",">",$msg);

$msg = str_replace("\t","    ",$msg);

//$msg = str_replace("\r","",$msg);

$msg = str_replace(" ","   ",$msg);

return $msg;

}

这里过滤了单引号 转义符没过滤。


然后就带入到update中 入库了。


在hy/member/cankao.php中


$companydb=$db-&gt;get_one("SELECT * FROM {$_pre}company WHERE uid='$uid' LIMIT 1");

if(!$companydb[if_homepage]){

showerr("您还没有申请企业商铺,<a href="$Murl/member/post_company.php?action=apply">点击这里申请企业商铺</a>,拥有自己的商铺");

} //这里查询出来了

$title = filtrate($title);

$url = filtrate($url);

$description = filtrate($description);

if($ck_id){

$db-&gt;query("UPDATE `{$_pre}friendlink` SET

title='$title',

url='$url',

description='$description',

yz=1

WHERE ck_id='$ck_id';");

}else{

$db-&gt;query("INSERT INTO `{$_pre}friendlink` ( `ck_id` , `uid` , `username` , `companyName` , `title` , `url` , `description` , `yz` ) VALUES ('', '$lfjuid', '$lfjid', '$companydb[title]', '$title', '$url', '$description', '1')");

}

然后这里把出库的$companydb[title] 也带入到了查询当中 所以这里我们可以引入转义符了。


然后后面的变量刚好也是可以控制的 所以就可以注入了。



image

把名字改成这样 然后

image

报错了


构造一下

image

注入成功

发表评论