漏洞原理
漏洞原理很简单,解压缩穿越目录,其实这个漏洞利用手法在前几个月就被修复,前几天被爆出依然是相同手法。再次被修复
漏洞分析
直入正题
getService 没啥看的就是将 user还有具体由哪个执行器类放入上下文,这里的User可以为空不影响后面的执行逻辑,不会报空指针异常,这里师傅各自展现神通
重点是getImportType 进入到具体执行器中 这里的params 是对request请求参数的一次封装,我们可控
getInputStreamById 大致意思是获取 从数据库中获取到文件的绝对路径读取后返回InputStream类
看到这里绝大部分师傅都应该懂了,对获取到的文件流进行解压
这个函数全程都没有任何的过滤,直接制作一个可穿越目录的压缩包,就可以上传师傅想上传的任何后缀文件到任意目录
当然前提是可以上传一个zip压缩包,zip在泛微很多处都可以上传,这里提供一个路由 随便找一个,返回文件id
tips:师傅们制作压缩包最好用Java
解压
修复
泛微历来的手法,拦截路由,并查看压缩包中是否有穿越路径,jsp等违规字符,如果有 返回404,记录日志。
修复手法比较拙劣,治标不治本
补充
这个为后台的漏洞,需要普通账号,但是泛微的鉴权机制还存在各种问题,后面可以单出一篇文章进行分析
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论