存在安全漏洞的 Spring Cloud 嵌入式 netty 服务器

Posted

技术标签:

【中文标题】存在安全漏洞的 Spring Cloud 嵌入式 netty 服务器【英文标题】:Spring Cloud embedded netty server with security vulnerabilities 【发布时间】:2021-12-23 19:30:24 【问题描述】:

我正在使用来自spring-cloud-dependencies:2020.0.4spring-cloud-starter-gatewayspring-boot-starter-webflux,将所有内容打包到一个docker 映像中。

我所有的路线都是用spring cloud的RouteLocatorBuilder写的。

使用Grype扫描图片,发现以下漏洞:

最新的reactor-netty-http:1.0.13 仍然没有修复这些问题。

我想解决这些问题。有什么建议吗?

[更新]

写信给Grype's Github 进行进一步调查。正如 Andreas 下面提到的,这些似乎确实是误报。现在在我的 BOM 中强制执行最新的 netty

【问题讨论】:

【参考方案1】:

我想这些都是误报,因为reactor-netty-http 没有HttpObjectDecoder.java in Netty before 4.1.44 的漏洞。 https://nvd.nist.gov/vuln/detail/CVE-2019-20444 提供的正则表达式有时过于不具体。

根据文档,您可以按照本指南抑制误报:https://github.com/anchore/grype#specifying-matches-to-ignore

如果您使用的是maven,您可以添加(但您不必这样做,因为这些都是误报):

    <project>
      ...
      <dependencyManagement>
        <dependencies>
          <dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-bom</artifactId>
            <version>4.1.70.Final</version>
            <type>pom</type>
            <scope>import</scope>
          </dependency>
        </dependencies>
      </dependencyManagement>
      ...
    </project>

修复在reactor-netty-http:1.0.13 中,因为netty 4.1.70 没有任何众所周知的安全漏洞:

【讨论】:

以上是关于存在安全漏洞的 Spring Cloud 嵌入式 netty 服务器的主要内容,如果未能解决你的问题,请参考以下文章

Spring Cloud Gateway RCE

Spring Cloud Gateway 远程代码执行漏洞(CVE-2022-22947)

Spring cloud微服务安全实战-7-1章节概述

Spring Cloud微服务安全实战_3-8_API安全之登录

Spring Cloud微服务安全实战_5-6_基于session的SSO优缺点以及适用场景

Spring cloud微服务安全实战-6-1本章概述