动态代码评估:不安全反序列化(Spring Boot 2)-如何避免与执行器相关的强化问题,或者是误报?

Raf*_*med 3 fortify spring-boot-actuator

我正在使用下面的执行器依赖项

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)

带弹簧靴2,

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.5.RELEASE</version>
</parent>
Run Code Online (Sandbox Code Playgroud)

对强化相关漏洞的任何评论,或者我们是否有任何理由获得有关强化问题的误报。

And*_*son 5

我怀疑 Fortify 提出这个问题不是因为spring-boot-starter-actuator它本身,而是因为它对 Jackson 的传递依赖,其中包含不可信数据漏洞的反序列化。然而,要使应用程序容易受到攻击,必须存在非默认且可能非常不寻常的一组情况。您可以在杰克逊作者的这篇博文中了解有关这些情况的更多信息。Spring Boot 的 Actuator 不支持多态类型处理,因此,如果 Fortify 警告是由 Jackson 引起的,那么它就是误报。

该漏洞已在 Jackson 2.9.7 中通过阻止某些类的多态反序列化得到修复。Spring Boot 2.0.6 和 2.1.0 默认使用 Jackson 2.9.7。