问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
梦想家内容管理系统 Zip Slip Traversal Vulnerability
漏洞分析
ZIP目录遍 因为ZIP压缩包文件中允许存在“../”的字符串,攻击者可以利用多个“../”在解压时改变ZIP包中某个文件的存放位置,覆盖掉应用原有的文件。可以利用此漏洞写入计划任务,或者写入Webshell造成任意代码执行漏洞。
### 0X01 ZIP目录遍历 因为ZIP压缩包文件中允许存在“../”的字符串,攻击者可以利用多个“../”在解压时改变ZIP包中某个文件的存放位置,覆盖掉应用原有的文件。可以利用此漏洞写入计划任务,或者写入Webshell造成任意代码执行漏洞。 ### 0X02 漏洞原理 在Linux/Unix系统中“../”代表的是向上级目录跳转,有些程序在当前工作目录中处理到诸如用“../../../../../../../../../../../etc/hosts”表示的文件,会跳转出当前工作目录,跳转到到其他目录中。 Java代码在解压ZIP文件时,会使用到ZipEntry类的getName()方法,如果ZIP文件中包含“../”的字符串,该方法返回值里面原样返回,如果没有过滤掉getName()返回值中的“../”字符串,继续解压缩操作,就会在其他目录中创建解压的文件。 ### 0x03风险示例 近期做项目遇到一个从来没见过的小CMS,闲来无事就看着玩玩,所以用Dreamer CMS为例,在Dreamer CMS的风格设置中允许用户通过网络下载新的主题进行更换,主题文件其实是一个ZIP压缩文件。通过直接上传构造的恶意zip文件进行漏洞验证。 源码下载地址https://gitee.com/isoftforce/dreamer\_cms [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-75397bd096ce956eb4c0ccf804780cba6ef09d7b.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-75397bd096ce956eb4c0ccf804780cba6ef09d7b.png) 使用evilzip <https://github.com/TheKingOfDuck/evilzip> 来构造恶意ZIP文件 [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-29b596e7240531c7d9c0068735c3d20750294297.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-29b596e7240531c7d9c0068735c3d20750294297.png) 上传恶意ZIP文件 [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-f385715ef284960a150078cf41956e2cb858857f.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-f385715ef284960a150078cf41956e2cb858857f.png) 系统进行解压 [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-d1723c11634b7a2f8579ad657f3b535e2b1a47f8.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-d1723c11634b7a2f8579ad657f3b535e2b1a47f8.png) 解压到我们设置的目录中,证明存在漏洞 [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-26ae7f5ac35e5bb5c9a89874e9c454652c05ade3.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-26ae7f5ac35e5bb5c9a89874e9c454652c05ade3.png) 0x04漏洞原因 主题文件其实是一个ZIP压缩包,从服务器下载后进行解压,但是解压时没有过滤entry.getName()返回的字符串中是否有“../”: [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-4ad6dbd00fe59dee146f484f8c32a7cba9fce5cb.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-4ad6dbd00fe59dee146f484f8c32a7cba9fce5cb.png) ### 0x05漏洞利用 将编译好的jar包部署到虚拟机上并运行 [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-e4953036af75670fb3a129db705e5486e08a88d2.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-e4953036af75670fb3a129db705e5486e08a88d2.png) 生成恶意jia包并上传,反弹shell成功 [![](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-897f71e2058911e028c6ca58f1e1891381824c93.png)](https://shs3.b.qianxin.com/attack_forum/2021/08/attach-897f71e2058911e028c6ca58f1e1891381824c93.png)
发表于 2021-08-23 17:29:59
阅读 ( 6049 )
分类:
代码审计
4 推荐
收藏
1 条评论
00勇士王子
2021-08-23 18:50
大佬tql
请先
登录
后评论
请先
登录
后评论
来给你一口甜
1 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!