CVE-2013-4152 Spring Framework 中的 XML 外部实体 (XXE) 注入

| 2013年8月22日 | CVE-2013-4152

描述

Spring OXM 包装器在使用 JAXB unmarshaller 时,未公开任何用于禁用实体解析的属性。有四种可能的源实现传递给 unmarshaller:DOMSource、StAXSource、SAXSource 和 StreamSource。

对于 DOMSource,XML 已经由用户代码解析,该代码负责防范 XXE。

对于 StAXSource,XMLStreamReader 已经由用户代码创建,该代码负责防范 XXE。

对于 SAXSource 和 StreamSource 实例,Spring 默认处理外部实体,从而产生了此漏洞。

通过默认禁用外部实体处理并添加一个选项来启用它,以供那些在处理来自可信来源的 XML 时需要使用此功能的用户使用,从而解决了此问题。

受影响的 Spring 产品和版本

  • 3.0.0 到 3.2.3
  • 4.0.0.M1
  • 早期不受支持的版本可能受影响

缓解措施

受影响版本的用户应采取以下缓解措施

  • 3.x 用户应升级到 3.2.4 或更高版本
  • 4.x 的用户应升级到 4.0.0.M2 或更高版本

致谢

这些问题由惠普企业安全团队的 Alvaro Munoz 发现。

参考资料

历史

2013 年 8 月 22 日:发布初始漏洞报告。

  • 2014 年 6 月 19 日:更新以删除已拆分为 CVE-2013-7315 的 Spring MVC 方面

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有