qibocms地方门户系统注入(多处类似,demo测试)

2014-10-29T00:00:00
ID SSV:94191
Type seebug
Reporter Root
Modified 2014-10-29T00:00:00

Description

简要描述:

初始化啊 初始化。

详细说明:

很多类似的 随便找个地方把。 首先注册个会员。 在dianping/post.php中

if($action=="postnew") { if($webdb[ForbidPostMore]){ if($db->get_one("SELECT * FROM {$_pre}content WHERE uid='$lfjuid' LIMIT 1")){ showerr("系统设置每人只能发布一个商铺!"); } } if(!check_rand_num($_POST["$webdb[rand_num_inputname]"])){ showerr("系统随机码失效,请返回,刷新一下页面,再重新输入数据,重新提交!"); } if(!$postdb[city_id]){ showerr("请选择城市"); } /*验证码处理*/ if($webdb[Info_GroupPostYzImg]&&in_array($groupdb['gid'],explode(",",$webdb[Info_GroupPostYzImg]))){ if(!$web_admin&&!check_imgnum($yzimg)){ showerr("验证码不符合,发布失败"); } } $postdb['list']=$timestamp; if($iftop){ //推荐置顶 @extract($db->get_one("SELECT COUNT(*) AS NUM FROM `{$_pre}content$_erp` WHERE list>'$timestamp' AND fid='$fid' AND city_id='$postdb[city_id]'"));

让哥来发布个点评。 @extract($db->get_one("SELECT COUNT(*) AS NUM FROM {$_pre}content$_erp WHERE list>'$timestamp' AND fid='$fid' AND city_id='$postdb[city_id]'")) 来看看这个语句。 {$_pre}content$_erp 来看看这个文件中的$_erp哪里来的

<img src="https://images.seebug.org/upload/201410/2616425712ce5dfdd7ccb1cdc468942418642da2.jpg" alt="5.jpg" width="600" onerror="javascript:errimg(this);">

可以看到 我们的这个语句位于 173行。 而对$_erp 赋值是在187行。 那么相当于我们173行的这个$_erp就没有初始化了。 结合qibocms 伪全局机制 那么我们就可以控制173行的这个$_erp 来达到注入的效果。 dianping/post.php?action=postnew&fid=11&postdb[address]=xx&postdb[city_id]=x&_erp=aaa&iftop=1&yzimg=a1df

<img src="https://images.seebug.org/upload/201410/2616450306302db43db4e44373728c2251afd5de.jpg" alt="6.jpg" width="600" onerror="javascript:errimg(this);">

构造一下

<img src="https://images.seebug.org/upload/201410/2616471463877b32e49734d1e9d1963e8b9d24af.jpg" alt="7.jpg" width="600" onerror="javascript:errimg(this);">

成功出数据。


测试demo。

<img src="https://images.seebug.org/upload/201410/261655002e90d234f1766f48bbc29541a48e3873.jpg" alt="8.jpg" width="600" onerror="javascript:errimg(this);">

嗯。

漏洞证明:

<img src="https://images.seebug.org/upload/201410/2616471463877b32e49734d1e9d1963e8b9d24af.jpg" alt="7.jpg" width="600" onerror="javascript:errimg(this);">