### 简要描述: 应该是qibo的最后一弹了。 ### 详细说明: 所测试的 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); 这里进行了个过滤...
### 简要描述: 应该是qibo的最后一弹了。 ### 详细说明: 所测试的 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->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->query("UPDATE `{$_pre}friendlink` SET title='$title', url='$url', description='$description', yz=1 WHERE ck_id='$ck_id';"); }else{ $db->query("INSERT INTO `{$_pre}friendlink` ( `ck_id` , `uid` , `username` , `companyName` , `title` , `url` , `description` , `yz` ) VALUES ('', '$lfjuid', '$lfjid', '$companydb[title]', '$title', '$url', '$description', '1')"); }</code> 然后这里把出库的$companydb[title] 也带入到了查询当中 所以这里我们可以引入转义符了。 然后后面的变量刚好也是可以控制的 所以就可以注入了。 [<img src="https://images.seebug.org/upload/201408/16133215b93c3718c643071dd32aaed1738b21bc.jpg" alt="q1.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201408/16133215b93c3718c643071dd32aaed1738b21bc.jpg) 把名字改成这样 然后 [<img src="https://images.seebug.org/upload/201408/161333250fdf311fc0885fa417cd12ea2e064a37.jpg" alt="q2.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201408/161333250fdf311fc0885fa417cd12ea2e064a37.jpg) 报错了。 构造一下 [<img src="https://images.seebug.org/upload/201408/16133436675ed3ec11f14bd2e69750450723be65.jpg" alt="q3.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201408/16133436675ed3ec11f14bd2e69750450723be65.jpg) [<img src="https://images.seebug.org/upload/201408/16133445d5ea26109f158ef29f66be5f13526362.jpg" alt="q4.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201408/16133445d5ea26109f158ef29f66be5f13526362.jpg) 成功出数据。 ### 漏洞证明: [<img src="https://images.seebug.org/upload/201408/16133445d5ea26109f158ef29f66be5f13526362.jpg" alt="q4.jpg" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201408/16133445d5ea26109f158ef29f66be5f13526362.jpg)