Spring Framework 和Spring Data Commons多处重要安全漏洞预警
近日,继Pivotal Spring官方公布三个紧急漏洞之后,再次公布三个紧急漏洞:CVE-2018-1273、CVE-2018-1274、CVE-2018-1275。
千里百科
Spring Framework是一个Java/Java EE/.NET的分层应用程序框架。它是一个基于IOC和AOP构架多层J2EE系统的开源框架,模块化好且实现了很优雅的MVC,对不同的数据访问技术提供了统一的接口。此外它采用的IOC可以很容易的实现Bean的装配,提供的AOP简洁易用并据此实现了Transaction Management等功能。Spring Framework 提供简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量属性文件和帮助类。目前此框架的使用非常活跃。Spring Data是Spring框架中提供底层数据访问的项目模块,Spring Data Commons是一个共用的基础模块。
漏洞描述
CVE-2018-1273漏洞:未经过身份验证的远程恶意用户(或攻击者)可以构造特殊的请求参数对基于HTTP资源的Spring Data REST 或者使用其他Spring Data’s projection-based请求载荷绑定内核来进行远程代码执行攻击(CVE-2018-1273, 高危)。
CVE-2018-1274漏洞:Spring Data Commons组件在解析属性路径时由于没有限制资源分配,未经过验证的远程恶意用户(或攻击者)可以使用可能导致拒绝服务的属性路径解析对Spring Data REST端点发送请求,通过消耗CPU和内存资源达到拒绝服务攻击的目的(CVE-2018-1274, 高危)。
CVE-2018-1275漏洞:Spring框架5.0-5.0.4、4.3-4.3.15以及不支持的旧版本等多个版本允许应用程序通过Spring-messaging模块在WebSocket端点上通过一个简单的STOMP代理来公开STOMP客户端。恶意用户(或攻击者)可以利用此模块向代理发送恶意的消息,从而导致远程代码执行攻击(CVE-2018-1275,高危)。
影响版本
CVE-2018-1273漏洞:
Spring Data Commons 1.13 - 1.13.10 (Ingalls SR10)
Spring Data REST 2.6 - 2.6.10 (Ingalls SR10)
Spring Data Commons 2.0 - 2.0.5 (Kay SR5)
Spring Data REST 3.0 - 3.0.5 (Kay SR5)
不支持的旧版本
CVE-2018-1274漏洞:
Spring Data Commons 1.13 - 1.13.10 (Ingalls SR10)
Spring Data REST 2.6 - 2.6.10 (Ingalls SR10)
Spring Data Commons 2.0 - 2.0.5 (Kay SR5)
Spring Data REST 3.0 - 3.0.5 (Kay SR5)
不支持的旧版本
CVE-2018-1275漏洞:
Spring Framework 5.0-5.0.4,
Spring Framework 4.3-4.3.15,
不支持的旧版本(3.2.0以下)。
修复建议
目前暂无漏洞POC,请及时关注某公司安全云和千里目安全实验室微信公众号,我们将第一时间推送此漏洞解决方案。
建议使用如下措施避免本次漏洞影响:
(1)CVE-2018-1273:
(1)Spring Data Commons2.0.x的用户请尽快升级到Spring Data Commons2.0.6
(2)Spring Data Commons1.13.x的用户请尽快升级到Spring Data Commons1.13.11
(3)旧版本的用户请尽快升级到Spring Data Commons2.0.6或者Spring Data Commons1.13.11。
Spring Data Commons更新到2.0.6或1.13.11最新版本下载链接地址:
https://repo.spring.io/release/org/springframework/data/spring-data-commons/
(2)CVE-2018-1274:
(1)Spring Data Commons2.0.x的用户请尽快升级到Spring Data Commons2.0.6
(2)Spring Data Commons1.13.x的用户请尽快升级到Spring Data Commons1.13.11
(3)旧版本的用户请尽快升级到Spring Data Commons2.0.6或者Spring Data Commons1.13.11。
Spring Data Commons更新到2.0.6或1.13.11最新版本下载链接地址:
https://repo.spring.io/release/org/springframework/data/spring-data-commons/
(3)CVE-2018-1275:
(1)Spring Framework 5.x的用户请尽快更新到Spring Framework 5.0.5版本;
(2)Spring Framework 4.3.x的用户请尽快更新到Spring Framework 4.3.16版本;
(3)使用不支持的Spring Framework旧版本的用户,请尽快更新到Spring Framework 4.3.16或者5.0.5最新版本。
Spring Framework更新到4.3.16或5.0.5最新版本下载链接地址:
http://repo.springsource.org/libs-release-local/org/springframework/spring/
或
https://github.com/spring-projects/spring-framework/releases
同时为了兼容上述两个最新版本,建议用户先升级Spring Boot版本:
Spring Framework 4.3.16:对应先升级Spring Boot 1.5.11版本;
Spring Framework 5.0.5:对应先升级Spring Boot 2.0.1版本.
下载地址:https://github.com/spring-projects/spring-boot/releases
参考链接
pivotal链接:
https://pivotal.io/security/cve-2018-1273
https://pivotal.io/security/cve-2018-1274
https://pivotal.io/security/cve-2018-1275
某公司解决方案
某公司安全团队第一时间关注此漏洞问题动向:
由于此漏洞尚未公开攻击细节,千里目安全实验室将持续关注此次漏洞进展,最快速度给出完整的解决方案。
信服君总结
本次Pivotal Spring官方公布三个紧急漏洞全是高危漏洞,攻击造成的损失极大,而且现在Spring框架的使用已经越来越广泛,如果本次这三个漏洞被攻击者利用,将会给用户带来巨大的灾难,可能会造成用户的服务器被控制或者服务器直接宕机的现象。