前言
原文地址:https://blog.tint0.com/2019/03/a-saga-of-code-executions-on-zimbra.html
参考文档:https://blog.csdn.net/fnmsd/article/details/88657083
历史版本存在的RCE(远程代码执行)漏洞:
CVE-2013-7091本地文件披露漏洞,影响范围为8.0.2以下版本。
CVE-2016-9924 XXE SoapEngine文件漏洞,影响范围为8.5以下版本,结合SSRF可造成RCE。
CVE-2019-9670 XXE Autodiscover文件漏洞,影响范围为8.5-8.7.11,结合SSRF可造成RCE。
至于在Zimbra 8.7.11-8.8.11版本上验证RCE,附加条件是Zimbra使用Memcached。
历史版本所有XXE漏洞:获取localconfig.xml
XML外部实体(XXE)攻击(有时称为XXE注入攻击)基于服务器端请求伪造。这种类型的攻击滥用了XML解析器广泛可用但很少使用的功能。使用XXE,攻击者能够导致拒绝服务(DoS)以及访问本地和远程内容和服务。在某些情况下,XXE甚至可以启用端口扫描并导致远程代码执行。有两种类型的XXE攻击:带内和带外。
Zimbra对其内部和外部操作使用大量的XML来处理,使用好XML文件会带来很大的XXE漏洞。
CVE-2016-9924的漏洞位于SoapEngine.chooseFaultProtocolFromBadXml()中,该错误发生在invalid XML requests。此漏洞用于8.5以下的所有Zimbra实例版本。但由于无法将输出提取到HTTP response,因此在利用它时需要使用带外提取方法。
CVE-2018-20160漏洞是处理XMPP协议的XXE漏洞。