补丁分析
2023-5-15 16:17:11 Author: 仙友道(查看原文) 阅读量:32 收藏

门户模板文件上传漏洞补丁

补丁编号:220800-S006
下载补丁,对比文件

         

在函数开头添加了对filename中是否存在“../”进行了校验   

分析函数体

File portalRootFolder = SystemEnvironment.getClusterPublicFolder("portal");          String fileType = fileTypeEnum.getKey();          File fileTypeFolder = new File(portalRootFolder, fileType);          if (!fileTypeFolder.exists()) {              fileTypeFolder.mkdir();          }          
File targetFile = new File(fileTypeFolder, fileName); FileUtils.copyFile(sourceFile, targetFile);
问题很明了,可以用”../”写入任意文件到任意位置
成功复现

processUploadForH5任意文件上传漏洞补丁

补丁编号:220800-S005
下载补丁,对比文件

增加了hashPath方法,以此来强制指定传进来的str为数字,在uploadFileForH5方法中对fileSize,lastModifiedDate,currentPageId这三个参数使用了该方法,那么问题也就出在这三个参数,而在uploadFileForH5方法中使用 getUploadTempFile方法来新建 tempFile 文件,在getUploadTempFile方法中拼接了lastModifiedDate,currentPageId参数,导致文件名可控

成功复现


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg3NjYwNDgzMQ==&mid=2247485775&idx=1&sn=988cbedba3aecc04664c29dfde0f07d5&chksm=cf2ef5bff8597ca9b8fdf6f38aa43b1a97e584c8d30378bbb065140a02e9fa12b1bc61bc04af#rd
如有侵权请联系:admin#unsafe.sh