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

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

缺陷编号:wooyun-2013-036663

漏洞标题:敏感信息泄露系列#1 系统管理员运维不当导致唱吧3000万+用户信息告急

相关厂商:Changba-inc

漏洞作者: 猪猪侠

提交时间:2013-09-10 14:07

修复时间:2013-10-25 14:08

公开时间:2013-10-25 14:08

漏洞类型:重要敏感信息泄露

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-09-10: 细节已通知厂商并且等待厂商处理中
2013-09-10: 厂商已经确认,细节仅向厂商公开
2013-09-20: 细节向核心白帽子及相关领域专家公开
2013-09-30: 细节向普通白帽子公开
2013-10-10: 细节向实习白帽子公开
2013-10-25: 细节向公众公开

简要描述:

有时候,一个微不足道的信息泄露问题就能造成整个企业安全的崩盘。
#安全需要顾全整体#

详细说明:

#1 信息泄露源
由于唱吧主站服务器WEB服务端配置缺陷,以及开发人员代码上线安全意识不足,直接将版本控制软件SVN所残留的信息发布到了线上。
WooYun: Changba-inc唱吧svn敏感信息泄露
白帽子曾经报告过一个svn信息泄露威胁,但唱吧的修复方案只是简单的针对http://访问源进行了限制,而对https的配置并未生效,导致仍然存在缺陷。
https://changba.com/.svn/entries
#2 写个自动化工具扫描,并爬行泄露的源码

svn_disclosure.py https://changba.com /
******************************************
* Fetching: https://changba.com
* mkdir changba.com
* http://www.kulv.com/repos/kulv/KTV/www
* http://www.kulv.com/repos/kulv
******************************************
DIR: \
DIR: \help
DIR: \common
DIR: \css
DIR: \voiceofchina
DIR: \banzou
DIR: \incoming
DIR: \personcenter
DIR: \Twig
DIR: \payment
DIR: \activity
DIR: \fm
DIR: \member
DIR: \exportsong
DIR: \game
DIR: \js
DIR: \newindex
DIR: \competition
DIR: \rules
DIR: \account
DIR: \views
DIR: \history
DIR: \signup
DIR: \cashout
DIR: \datePicker
DIR: \games
DIR: \anniversary
DIR: \yunying
DIR: \images
DIR: \agreement
DIR: \data
******************************************
FILE: \mobsong_notfound.html
FILE: \competition_controller.php
FILE: \crontab_share_activity_statistics.php
FILE: \d.html
FILE: \crontab_make_songindex_db.php
FILE: \index.html
FILE: \wochangba.php
FILE: \appstore.php
FILE: \banner_area.php
FILE: \CompetitionMain.php
FILE: \yunying.php
FILE: \help.html
FILE: \question.php
FILE: \pcsong_notfound.html
FILE: \gamegift.php
FILE: \redirect_index.php
FILE: \Activity_Mem.php
FILE: \stats.php
FILE: \buy.php
FILE: \static_activity_page.php
FILE: \recommond.html
FILE: \mindex.html
FILE: \activity_new.php
FILE: \makerecommenduser.php
FILE: \activity_ios.php
FILE: \contact.html
FILE: \qqvipgift.php
FILE: \policy.html
FILE: \old_index.html
FILE: \crontab_share_activity_statistics2.php
FILE: \updateapp.php
FILE: \activity.php
FILE: \qq_callback.php
FILE: \Mobile_Detect.php
FILE: \exchangecenter.html
FILE: \staticcompetition.php
FILE: \gamegift1.php
FILE: \alert.php
FILE: \login.php
FILE: \favicon.ico
FILE: \game.php
FILE: \recommend.php
FILE: \changba_unicom.html
FILE: \crontab_make_songlist_db.php
FILE: \login_success.html
FILE: \guide_sing.php
FILE: \gamehome.php
FILE: \videotest.html
FILE: \activity_no_build.html
FILE: \download.html
FILE: \redirect_song.php
FILE: \anzhuang.html
FILE: \RecommendMusicService.php
******************************************
Author: tianran
Author: guoteng
Author: gaojie
Author: luohongjian
Author: liuyutong
Author: wuhaiwen
Author: xiaokai.zhan
Author: zhouhaixu
Author: eric
Author: chenzhuo
Author: kongmiaomiao
******************************************


#3 获取了源码,即可针对代码进行代码审计或其它漏洞挖掘

changba_svn_download.jpg


#4 针对源码挖掘,发现其中一个上传漏洞
\competition\common_functions.php 159行

/**
* 主办方上传授权协议
*
* @return 如果出错返回相应的errorcode
*/
function uploadAgreement() {
$result = array ();
if (! isset ( $_FILES ['agreement'] ['name'] ) || empty ( $_FILES ['agreement'] ['name'] )) {
$result ['errorcode'] = "EMPTY";
} elseif ($_FILES ["agreement"] ["error"] > 0) {
$result ['errorcode'] = "FAIL";
} elseif (($_FILES ["agreement"] ["size"] / 1024) > 10240) {
$result ['errorcode'] = "EXCEED_SIZE";
} else {
$fileDir = "/home/wwwroot/www.changba.com/agreement/";
if (! file_exists ( $fileDir )) {
mkdir ( $fileDir, 0777 );
}
$currentTimestamp = strtotime ( date ( "Y-m-d H:i:s" ) );
$filename = $currentTimestamp . $_FILES ["agreement"] ["name"];
$realPath = $fileDir . $filename;
if (move_uploaded_file ( $_FILES ["agreement"] ["tmp_name"], $realPath )) {
$result ['errorcode'] = "OK";
$result ['filename'] = $filename;
} else {
$result ['errorcode'] = "FAIL";
}
}
return $result;
}


changba_upload.jpg


漏洞证明:

#5 任意文件上传漏洞利用

changba_shell.jpg


#6 查看数据库配置信息

<?php
// =============================
// ====== 纵切专用库 ===========
// =============================
/*mysql client 写数据库地址*/
$config['ZuitaoKtvServer_client']['servername'] = '192.168.*.***';
$config['ZuitaoKtvServer_client']['port'] = 3306;
$config['ZuitaoKtvServer_client']['username'] = '******';
$config['ZuitaoKtvServer_client']['password'] = 'PS***********94';
$config['ZuitaoKtvServer_client']['pconnect'] = 0;
$config['ZuitaoKtvServer_client']['dbname'] = 'changba_client';
$config['ZuitaoKtvServer_client']['charset'] = 'utf8';
/*mysql client 读数据库地址*/
$config['ZuitaoKtvServer_client_read']['servername'] = '192.168.*.***';
$config['ZuitaoKtvServer_client_read']['port'] = 3306;
$config['ZuitaoKtvServer_client_read']['username'] = '****';
$config['ZuitaoKtvServer_client_read']['password'] = 'PS***********94';
$config['ZuitaoKtvServer_client_read']['pconnect'] = 0;
$config['ZuitaoKtvServer_client_read']['dbname'] = 'changba_client';
$config['ZuitaoKtvServer_client_read']['charset'] = 'utf8';

修复方案:

#1 漏洞修复方案修复完整
#2 找专业安全人员代码审计
#3 可以找乌云众测平台的白帽子们帮你们消灭掉存在的边界隐患

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2013-09-10 17:49

厂商回复:

记得上午已经确认了?不论如何,谢谢这位童鞋,请把联系方式告知我们,我们将作出感谢,并欢迎给出更多建议!

最新状态:

暂无


漏洞评价:

评论

  1. 2013-09-10 14:08 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    @猪猪侠 暴走了

  2. 2013-09-10 14:16 | 冷静 ( 路人 | Rank:3 漏洞数:2 )

    我始终觉得你不是人

  3. 2013-09-10 14:18 | niliu 认证白帽子 ( 核心白帽子 | Rank:1542 漏洞数:206 | 逆流而上)

    3000W!!!

  4. 2013-09-10 14:21 | lucky ( 普通白帽子 | Rank:409 漏洞数:84 | 三人行必有我师焉########################...)

    我始终觉得你不是一个人在战斗!

  5. 2013-09-10 14:26 | 虫子 ( 路人 | Rank:5 漏洞数:1 | 小弟也是大学生)

    其实我知道是谁

  6. 2013-09-10 14:28 | 爱上平顶山 认证白帽子 ( 核心白帽子 | Rank:2738 漏洞数:547 | [不戴帽子]异乡过客.曾就职于天朝某机构.IT...)

    @ 猪猪侠 哪个google浏览器检测svn框架的插件是什么? 谢谢

  7. 2013-09-10 14:30 | Mujj ( 实习白帽子 | Rank:58 漏洞数:4 | IDC商)

    不怕人家又加你QQ找你咩

  8. 2013-09-10 14:40 | 疯子 ( 普通白帽子 | Rank:242 漏洞数:42 | 世人笑我太疯癫,我笑世人看不穿~)

    暴走拉...

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

    @爱上平顶山 自己写,就几个http请求判断这么简单。

  10. 2013-09-10 14:44 | 爱上平顶山 认证白帽子 ( 核心白帽子 | Rank:2738 漏洞数:547 | [不戴帽子]异乡过客.曾就职于天朝某机构.IT...)

    @猪猪侠 厉害 呵。。 求发2250086856@qq.com 谢谢

  11. 2013-09-10 14:44 | feng ( 普通白帽子 | Rank:664 漏洞数:79 | 想刷个6D)

    猪哥v5,期待更多教学提帖

  12. 2013-09-10 14:46 | 疯子 ( 普通白帽子 | Rank:242 漏洞数:42 | 世人笑我太疯癫,我笑世人看不穿~)

    猪哥v5,期待更多教学提帖

  13. 2013-09-10 15:21 | 鬼魅羊羔 ( 普通白帽子 | Rank:299 漏洞数:42 | (#‵′)凸(#‵′)凸(#‵′)凸(#‵′)凸(#‵...)

    求抱大腿。。

  14. 2013-09-10 15:21 | winsyk ( 普通白帽子 | Rank:108 漏洞数:16 | 越长大越孤单)

    注册都注册不了,测试不了。。

  15. 2013-09-10 15:55 | 小痞子 ( 普通白帽子 | Rank:106 漏洞数:21 | <xss>alert("a")</xss>¥&@&……dssKhwjcw...)

    留名·

  16. 2013-09-10 16:43 | 一只猿 ( 普通白帽子 | Rank:463 漏洞数:89 | 硬件与无线通信研究方向)

    你不是一个人

  17. 2013-09-10 18:04 | also ( 普通白帽子 | Rank:424 漏洞数:52 | 招渗透/php/前端/ios&android安全,广州地...)

    话说我前天刚下在这个软件,昨晚自个儿唱了一晚,哈哈,发现很难玩

  18. 2013-09-10 19:03 | 低调的瘦子 ( 普通白帽子 | Rank:466 漏洞数:68 | loading……………………)

    求欧弟、钱枫及各种女神的联系方式!!

  19. 2013-09-10 22:07 | Master ( 路人 | Rank:29 漏洞数:10 )

    有时候,一个微不足道的信息泄露问题就能造成整个企业安全的崩盘。

  20. 2013-09-11 10:26 | 围剿 ( 路人 | Rank:17 漏洞数:5 | Evil decimal)

    @低调的瘦子 屌丝气质尽显无疑。。。我只想说以后遇到这样的事情,记得叫上我。

  21. 2013-09-11 13:22 | Master ( 路人 | Rank:29 漏洞数:10 )

    @猪猪侠 求唱吧里面的那个ID:方大人 那个女神的联系方式

  22. 2013-09-12 10:03 | exploits ( 实习白帽子 | Rank:69 漏洞数:17 | As We Do,As You Know !)

    目测洞主已被查水表。

  23. 2013-10-11 04:15 | alou ( 路人 | Rank:0 漏洞数:3 | PHP屌丝一枚)

    请把联系方式告知我们,我们将查水表

  24. 2013-10-25 14:50 | 姿势不行 ( 路人 | Rank:22 漏洞数:7 | 我是爱卖萌的小阿狸呀http://www.qinqinyo....)

    唱吧不是装了安全保吗 能随便上传??

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

    @姿势不行 看来是挖出问题后买的服务!

  26. 2013-12-03 09:22 | ice ( 路人 | Rank:0 漏洞数:1 | inevitable...)

    学习了