ROCBOSS微社区V1.1版本SQL注入漏洞

漏洞作者: linadmin

ROCBOSS微社区 V1.1 正式版存在一个SQL注入漏洞:

漏洞文件:

\module\user.module.class.php

第11行代码:

[php]

$userInfo=Common::getMemberInfo($this->db,is_numeric($userId) ? 'uid' : 'nickname', $userId);

[/php]

这一行代码进行了数据库查询,关键之处在$userId这个变量上

向上回溯到第10行代码:

[php]

$userId=(isset($_GET['id']) && trim($_GET['id']) != '') ? $_GET['id'] : $this->loginInfo['uid'];

[/php]

当$_GET[‘id’]被赋值的时候这个参数就能控制了,而且没有进行过滤。

再到数据库执行的地方查看一下

[php]

public static function getMemberInfo($DB, $key, $value)

{

$memberArray = array(

"uid" => 0,

"nickname" => "",

"email" => "",

"password" => "",

"regtime" => "",

"qqid" => "",

"groupid" => 0

);

$DBArray = $DB->selectOneArray("SELECT * FROM `" . PRE . "user` WHERE `" . $key . "`='" . $value . "'");

[/php]

传进去是第三个参数Value在没有开GPC的情况下可以引入污点数据,进行注入。

验证一下

首先需要注册一个用户

登陆后访问

http://192.168.45.131/rocboss/?m=user&w=index&id=1

存在注入的参数就是id

可以进行union 和盲注注入

261940457d24457a5190cc45fe208c2a88e14d13[1]

 

使用sqlmap进行验证:

2619410558d3193c1120e116e7dfff7e5d4abdb1[1]

发表评论