漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2015-0153730
漏洞标题:新为某通用系统配置不当致文件上传getshell(无需登陆)
相关厂商:新为软件
漏洞作者: 路人甲
提交时间:2015-11-25 14:46
修复时间:2015-12-17 14:48
公开时间:2015-12-17 14:48
漏洞类型:默认配置不当
危害等级:高
自评Rank:15
漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2015-11-25: 细节已通知厂商并且等待厂商处理中
2015-11-27: 厂商已经确认,细节仅向厂商公开
2015-11-30: 细节向第三方安全合作伙伴开放(绿盟科技、唐朝安全巡航)
2016-01-21: 细节向核心白帽子及相关领域专家公开
2016-01-31: 细节向普通白帽子公开
2016-02-10: 细节向实习白帽子公开
2015-12-17: 细节向公众公开
简要描述:
新为某通用系统配置不当致文件上传getshell(无需登陆)
详细说明:
该系统是新为软件的smartbos管理系统,新为软件是目前中国最大的学习管理软件提供商之一。该系统的使用量非常之大,先来看看官方给的使用情况吧
企业:http://**.**.**.**/case_enterprise.html
教育:http://**.**.**.**/case_college.html
政府:http://**.**.**.**/case_government.html
部分案例截个图
1、由于配置不当,致使某个上传页面可以访问,虽然在上传时需要验证参数ticks,但是经过多次尝试,破解了该ticks的计算方法,可以成功文件上传页面。
2、上传时需要提供网站的绝对路径,这里通过破解的ticks可以成功得到网站的绝对路径。首先说明如何突破参数ticks的限制,看到这个参数的名字,应该差不多猜到了这里是对时间进行了一次验证,通过多次的尝试与猜解,最后判断出该参数ticks是这样计算出来的:
为了审核大大测试方便,把C#的代码也贴上吧
上面的Encode方法的返回值,即为参数ticks的值,可以看出,ticks的计算是以当前时间为基础的,经过测试,该值在一个小时内可用,若超过一个小时,需要重新运行Encode方法计算ticks的值。
下面说下ticks是如何使用的:
先写个页面来获取网站的绝对路径,如下:
代码也贴这里吧
请仔细看图中的标注,把运行Encode方法计算的ticks替换上图中的ticks,这样提交后,会得到一个如下的页面:
查看页面源码可以找到网站的绝对路径
然后选择马儿进行上传,会发送两个包,burp抓第二个包,可以看到在上一步获得的网站绝对路径,这里一般不用修改,直接Forward,(如果修改的话,经过测试发现,随着ticks第一位数字的不同,修改后的路径可能生效,也可能无效,原因未知)如下图
完成上传,若上传路径未修改,上传后的路径为:D:\Newway\SmartExam\Web\fileroot\attack.aspx
访问路径为:http://**.**.**.**/fileroot/attack.aspx
用刀连接之
点到为止
漏洞证明:
见 详细说明
修复方案:
控制访问权限
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:11
确认时间:2015-11-27 15:35
厂商回复:
CNVD确认所述情况,已由CNVD通过软件生产厂商公开联系渠道向其邮件通报,由其后续提供解决方案并协调相关用户单位处置。
最新状态:
暂无