SpringBoot Tomcat漏洞修复的解决方法

2025-05-14 11:24:37 152
魁首哥

apache tomcat 远程代码执行漏洞(cve-2025-24813)

tomcat 是一个开源的、轻量级的 web 应用服务器 和 servlet 容器。它由 apache 软件基金会下的 jakarta 项目开发,是目前最流行的 java web 服务器之一。

该漏洞利用条件较为复杂,需同时满足以下四个条件:

  • 应用程序启用了 defaultservlet 写入功能,该功能默认关闭。
  • 应用支持了 partial put 请求,能够将恶意的序列化数据写入到会话文件中,该功能默认开启。
  • 应用使用了 tomcat 的文件会话持久化并且使用了默认的会话存储位置,需要额外配置。
  • 应用中包含一个存在反序列化漏洞的库,比如存在于类路径下的 commons-collections,此条件取决于业务实现是否依赖存在反序列化利用链的库。

漏洞威胁等级:高危

受影响的版本

11.0.0-m1 <= apache tomcat <= 11.0.2
10.1.0-m1 <= apache tomcat <= 10.1.34
9.0.0.m1 <= apache tomcat <= 9.0.98

安全版本

apache tomcat >= 11.0.3
apache tomcat >= 10.1.35
apache tomcat >= 9.0.99

关键配置

项目结构

demo_project
├─module
│  ├─src
│  │  └─main
|  └─pom.xml
└─pom.xml

项目根路径下的 pom.xml



	4.0.0

  cn.demo
  demo
  1.0.0

  demo
  demo

  
    1.0.0
    utf-8
    utf-8
    1.8
    
    9.0.99
    1.3.5
  

  
  
    
      
      
        org.springframework.boot
        spring-boot-dependencies
        2.5.14
        pom
        import
      

      
      
        org.apache.tomcat.embed
        tomcat-embed-core
        ${tomcat.version}
      
      
        org.apache.tomcat.embed
        tomcat-embed-el
        ${tomcat.version}
      
      
        org.apache.tomcat.embed
        tomcat-embed-websocket
        ${tomcat.version}
        
          
            tomcat-annotations-api
            org.apache.tomcat
          
        
      
        
          jakarta.annotation
          jakarta.annotation-api
          ${jakarta.annotation-api.version}
        
    
  

  
    module
  

  pom

  
  

  
      
        
          org.apache.maven.plugins
          maven-compiler-plugin
          3.8.1
          
            ${java.version}
            ${java.version}
            ${project.build.sourceencoding}
            true
          
        
      
      
        
          src/main/resources
          true
        
        
          src/main/java
          
            **/*.xml
          
        
      
  

module 目录下的 pom.xml



    
        demo
        cn.demo
        1.0.0
    
    4.0.0

    module

    
        module模块
    

    
		  
        
          org.springframework.boot
          spring-boot-starter-web
          
            
              org.apache.logging.log4j
            log4j-api
            
              
                org.springframework.boot
                spring-boot-starter-tomcat
              
          
      

      
      
        org.springframework.boot
        spring-boot-starter-websocket
        
          
            org.springframework.boot
            spring-boot-starter-tomcat
          
        
      
      
        org.apache.tomcat.embed
        tomcat-embed-core
        
          
            tomcat-annotations-api
            org.apache.tomcat
          
        
      
      
        org.apache.tomcat.embed
        tomcat-embed-el
      
      
        org.apache.tomcat.embed
        tomcat-embed-websocket
        
          
            tomcat-annotations-api
            org.apache.tomcat
          
        
      
      
        jakarta.annotation
        jakarta.annotation-api
      
    

参考文献

  • spring-boot-starter-parent 2.5.14 maven 依赖项

到此这篇关于springboot tomcat漏洞修复的解决方法的文章就介绍到这了,更多相关springboot tomcat漏洞修复内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

分享
海报
152
上一篇:在Spring Boot中浅尝内存泄漏的实战记录 下一篇:SpringBoot项目引入MCP的实现示例

忘记密码?

图形验证码