Zimbra 远程代码执行漏洞

来源:scanv2019.03.20

一、漏洞概述

 1、简介

Zimbra Collaboration Suite(ZCS)是一个协作软件套件,包括电子邮件服务器和Web 客户端[1]

2019 年 3 月 13 日,国外安全研究员 tint0 发布了一篇博客,指出 Zimbra Collaboration Server 系统全版本存在一系列漏洞,通过恶意利用可以导致远程代码执行漏洞[2]

2019 年 3 月18 日,Seebug 平台收录了该漏洞[3],知道创宇 404 漏洞应急团队开始对该漏洞进行漏洞应急。

2、影响版本

  • Zimbra< 7.11 版本中,攻击者可以在无需登录的情况下,实现远程代码执行。
  • Zimbra< 8.11 版本中,在服务端使用 Memcached 做缓存的情况下,经过登录认证后的攻击者可以实现远程代码执行。

二、漏洞复现

1、复现环境

  • Zimbra 8.5.0

2、复现过程及结果

1. 通过XXE漏洞读取xml,从而获取 zimbra admin ldap password,此处复现的版本是 8.5.0,可以使用CVE-2016-9924,对于版本 8.5~8.7.11 可以使用

CVE-2019-9670 或者CVE-2018-20160。此处以CVE-2016-9924 为例。因为无回显,所以需要使用ftp 协议将数据传输出来,使用 xxer.py[4]模拟 HTTP 服务器和

FTP 服务器。

2. 利用adminldap passord 获取管理员authToken。

3. 构造表单,上传shell。

4. 访问 shell(需要 authToken)

此外,tint0 博客文章里指出,即使在 7071 admin 端口做了防火墙配置、不对外开放的情况下,也可以利用存在于 443 普通用户端口服务里身份认证的一个特性,配合ProxyServlet.doProxy() 方法里的 SSRF(CVE-2019-9621),同样也能完成 admin SOAP AuthRequest 认证,得到 admin authtoken。

除此之外,在 Zimra 服务端使用 Memcached 做缓存服务时,还可以利用 SSRF 攻击 Memcached 缓存服务,通过反序列化实现远程代码执行(CVE-2019-6980)。

三、漏洞影响

根据 ZoomEye 网络空间搜索引擎对 app:"Zimbra" 关键词的搜索结果[6],共找到 372892条历史记录。

四、防护方案

1、Zimbra 发布了多个补丁修复这些漏洞,其中最重要的是修复 XXE 和任意反序列化。但是,此修复程序仅适用于 8.7.11 和 8.8.x.如果您使用早期版本的Zimbra,请考虑升级到其支持的版本之一,具体补丁版本可参考 Zimbra 官方的安全公告[5]

2、使用第三方防火墙进行防护(如创宇盾[https://www.yunaq.com/cyd/])

3、技术业务咨询

    知道创宇技术业务咨询热线 :

    400-060-9587(政府,国有企业)、028-68360638(互联网企业)

 

热门文章

关注知道创宇云安全

获取安全动态