Spring Cloud 突发漏洞

大家好,我是栈长。

Log4j2 的核弹级漏洞刚告一段落,Spring Cloud Gateway 又突发高危漏洞,又得折腾了。。。

昨天栈长也看到了一些安全机构发布的相关漏洞通告,Spring Cloud 官方博客也发布了高危漏洞声明:

Spring Cloud 中的 Spring Cloud Gateway 组件被爆出了两个安全漏洞。

Spring Cloud Gateway 是 Spring Cloud 的第二代网关组件,是 Spring Cloud Finchley 版推出来的新组件,用来代替第一代服务网关:Zuul。

Spring Cloud Gateway 的主要作用是:为微服务架构提供一种简单、有效、统一的 API 路由管理方式。

具体可以参考:Spring Cloud Gateway VS Zuul 比较,怎么选择?

漏洞1:

| CVE-2022-22947 | 远程代码执行漏洞 |
| 影响组件 | Spring Cloud Gateway |
| 受影响版本 | – 3.1.0
– 3.0.0 ~ 3.0.6
– 其他不再维护的旧版本 |
| 漏洞危害等级 | 高危 |

当 Spring Cloud Gateway Actuator 端点被启用和暴露时,使用 Spring Cloud Gateway 的应用程序会存在远程代码注入攻击的风险,即攻击者可以远程发出恶意攻击请求,允许在远程服务器上进行任意代码执行。

漏洞2:

| CVE-2022-22946 | HTTP2 不安全的 TrustManager |
| 影响组件 | Spring Cloud Gateway |
| 受影响版本 | 3.1.0 |
| 漏洞危害等级 | 中等 |

Spring Cloud Gateway 如果配置并启用 HTTP2,且未设置密钥存储或受信任证书,这样 Spring Cloud Gateway 就能被无效或自定义的证书连接到远程服务。

另外,如果你想关注和学习最新、最主流的 Java 技术,栈长会持续分享,可以持续关注公众号Java技术栈,公众号第一时间推送。

解决方案

1、升级版本

Spring Cloud 2021.0.x 用户可以把主版本升级到 Spring Cloud 2021.0.1,Spring Cloud Gateway 已升级到了 3.1.1。

这个在前几天的《新年首发!Spring Cloud 2021.0.1 发布》最新版本发布时,我并没有看到修复这个高危漏洞的说明,昨天官方博客发了这个漏洞通告又含在这个版本中,这就有点摸不到头脑了。。

Spring Cloud 2020.0.x 用户可以自行升级到 Spring Cloud Gateway 3.0.7。

其他不再维护的老版本也有漏洞,只是官方不再维护了,是否可自己升级,兼容性不得而知。

2、临时方案(仅限第1个漏洞)

这个临时方案仅限第 1 个漏洞,第二个漏洞只能升级 Spring Cloud 主版本。

如果不需要用到 Gateway actuator 端点,可通过以下配置禁用:

management.endpoint.gateway.enabled: false

如果需要 Gateway actuator 端点,则应使用 Spring Security 对其进行防护,可参考以下网址:

https://docs.spring.io/spring-boot/docs/current/reference/html/actuator.html#actuator.endpoints.security

总结

Spring Cloud Gateway 这两个漏洞还挺重要的,特别是第一个远程代码执行,特别危险,自行检查,废话不多说了,如果有涉及到的,尽快修复保平安。

学 Spring Cloud 必须先掌握 Spring Boot,如果你还没用过 Spring Boot,今天我就送你一份 《Spring Boot 学习笔记》这个很全了,包括底层实现原理及代码实战,非常齐全,助你快速打通 Spring Boot 的各个环节。

Spring Boot 理论和实战源码仓库:

https://github.com/javastacks/spring-boot-best-practice

最后,如果你想关注和学习最新、最主流的 Java 技术,可以持续关注公众号Java技术栈,公众号第一时间推送。

参考资料:

https://spring.io/blog/2022/03/01/spring-cloud-gateway-cve-reports-published

https://tanzu.vmware.com/security/cve-2022-22947

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注