当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-048790

漏洞标题:PinPHP SQL注入漏洞1

相关厂商:PinPHP

漏洞作者: xfkxfk

提交时间:2014-01-14 11:39

修复时间:2014-04-14 11:40

公开时间:2014-04-14 11:40

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-01-14: 积极联系厂商并且等待厂商认领中,细节不对外公开
2014-04-14: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

PinPHP SQL注入漏洞,可获得管理员用户名密码

详细说明:

PinPHP 查看私信处SQL注入。
文件app/lib/action/home/messageaction.php:

public function talk() {
$ftid = $this->_get('ftid');//未过滤
$uid = $this->visitor->info['id'];
$message_mod = M('message');
$map = "ftid='".$ftid."' AND ((from_id = '".$uid."' AND status<>2) OR (to_id = '".$uid."' AND status<>3))";//进入查询
//更新状态
$message_mod->where($map)->setField('status', 0);
//显示列表
$pagesize = 8;
$count = $message_mod->where($map)->order('id DESC')->count('id');
$pager = $this->_pager($count, $pagesize);
$message_list = $message_mod->where($map)->order('id DESC')->limit($pager->firstRow.','.$pager->listRows)->select();
if ($message_list[0]['from_id'] == $uid) {
$ta_id = $message_list[0]['to_id'];
$ta_name = $message_list[0]['to_name'];
} else {
$ta_id = $message_list[0]['from_id'];
$ta_name = $message_list[0]['from_name'];
}
$this->assign('message_list', $message_list);
$this->assign('ta_id', $ta_id);
$this->assign('ta_name', $ta_name);
$this->assign('ftid', $ftid);
$this->assign('page_bar', $pager->fshow());
$this->_curr_menu('message');
$this->_config_seo();
$this->display();
}


从上述代码可以看出,在查看消息详情时,对ftid参数未过滤,导致SQL注入。

漏洞证明:

1.png

修复方案:

过滤

版权声明:转载请注明来源 xfkxfk@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝