iOS第三方解压缩库0-Day预警的示例分析

这篇文章主要为大家分析了iOS第三方解压缩库 0-Day预警的示例分析的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“iOS第三方解压缩库 0-Day预警的示例分析”的知识吧。

为雁峰等地区用户提供了全套网页设计制作服务,及雁峰网站建设行业解决方案。主营业务为成都网站制作、成都网站建设、外贸营销网站建设、雁峰网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

0x00 背景

2018年5 月 15 日傍晚盘古团队披露了 ZipperDown 漏洞[1],其中涉及到的主要的第三方解压缩库为 ZipArchive[2]。我们团队主要负责公司内 iOS App 的安全,因此为了更快的推进漏洞修复,我们连夜为这个漏洞编写了补丁,并在 16 日上午向官方的代码库提交了 Pull Request[3]。这个补丁主要处理了 Zip 包中的相对路径及软链接问题。由于时间紧,该补丁并没有考虑接口兼容性问题,但是作为修复漏洞的参考,已经包含了足够的信息。
收到了 Pull Request 关闭的邮件通知[4]:

iOS第三方解压缩库 0-Day预警的示例分析

其中一条描述大意为:没有什么证据说明 Zip 中的符号链接会引起安全问题。于是我们构造了新的 PoC[5] 来说明:存在于 ZipArchive 库中的,由于没有安全的处理软链接而造成的路径穿越漏洞。

0x01 漏洞描述

ZipArchive 库没有安全的处理 Zip 包中的软链接,存在路径穿越漏洞。
Zip 包的构造方法:

  1. 首先,向 Zip 文件中添加一个软链接 PDIR,指向 ../。

  2. 然后,向 Zip 中添加文件,文件名为:PDIR/XXX。
    这样在解压缩时 XXX 文件会被解压到 PDIR 指向的目录,通过组合 PDIR 可以实现任意级别的穿越。
    PoC 地址: https://github.com/Proteas/ZipArchive-Dir-Traversal-PoC
    运行 PoC 后的效果如下:  

iOS第三方解压缩库 0-Day预警的示例分析

0x02 漏洞危害

像 ZipperDown 一样,路径穿越本身只会造成文件覆盖,但是结合 App 中的其他缺陷可能造成远程任意代码执行。

关于“iOS第三方解压缩库 0-Day预警的示例分析”就介绍到这了,更多相关内容可以搜索创新互联以前的文章,希望能够帮助大家答疑解惑,请多多支持创新互联网站!


标题名称:iOS第三方解压缩库0-Day预警的示例分析
标题来源:http://azwzsj.com/article/gipgog.html