freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

定心丸!ZipperDown漏洞分析与修复建议
2018-05-18 06:55:49

近日,盘古实验室对外披露了ZipperDown漏洞,该漏洞是盘古团队针对不同客户的iOS应用安全审计的过程中发现的,大约有10%的iOS应用会受到此漏洞的影响。

利用此漏洞可以做很多事情,例如实现目录遍历攻击和App Container目录中任意文件覆盖风险……影响究竟有多大,取决于具体App和对应取得的权限。

ZipperDown获得大量媒体聚焦的同时,也吸引了大量不法分子的目光,一场安全风暴隐约即将到来。

那如何防止ZipperDown漏洞带来的破坏呢?网易云易盾安全专家结合目前披露的信息以及自己的分析,给出了如下分析和建议:

漏洞原理

ZipperDown漏洞并非iOS平台自身问题,而是与Zip文件解压有关。iOS平台没有提供官方的unzipAPI函数,而是引用了第三方库来实现解压功能,由于现有的iOS App基本上采用SSZipArchive或Ziparchive来实现解压,因此漏洞是来自使用第三方Zip库解压Zip文件的过程中没有对Zip内文件名做校验导致的。如果文件名中含有“../”则可以实现目录的上一级跳转,从而实现应用内任意目录的跳转,进一步可以实现文件覆盖,如果把App的hotpatch文件覆盖替换了,可以达到执行黑客指定指令,从而按照黑客的意图实现任意应用内攻击。

这个漏洞不禁让易盾联想到不久前Android平台上的unZip解压文件漏洞,和这个漏洞几乎是完全一样,只是平台和第三方解压库不同而已。Android平台上的被称为unZip解压文件漏洞,网易云易盾安全检测平台已经可以实现扫描检测。

修复建议

开发中在使用第三方解压库对Zip文件解压过程中,要对Zip内部文件名进行“../”过滤,另外存放关键数据的文件如Hotpatch记得进行加密、合法性和完整性校验,使用HTTPS安全传输协议通信等,也可以购买易盾的通信协议加密SDK,做到最大程度的防范。

本漏洞的修复可以参考Android平台的unZip解压文件漏洞修复方案进行修复,下面是Android平台的修复方案:

QQ截图20180518063307.png

总结

攻击条件:

  1. 使用了第三方解压库。

  2. Zip包在解压时没有做完整性校验。

  3. APP使用了JSPatch或其他执行引擎,且本地脚本没有加密,只要把脚本放指定目录即可执行 ,本地脚本未做合法性校验。

  4. 连接不可靠的WIFI热点进行通信。

类似解压等通用功能的漏洞,一个平台爆出了漏洞,其他平台往往也受到牵连,这个ZipperDown漏洞就是这样的。在最后,网易易盾移动安全专家也向普通用户建议,在相关App未修复之前,不要轻易连接不受信任的公共网络。

# iOS ZipperDown
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者