欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot Tomcat漏洞修復(fù)的解決方法

 更新時間:2025年04月17日 09:57:45   作者:高建偉-joe  
本文主要介紹了SpringBoot Tomcat漏洞修復(fù)的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

Apache Tomcat 遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2025-24813)

Tomcat 是一個開源的、輕量級的 Web 應(yīng)用服務(wù)器 和 Servlet 容器。它由 Apache 軟件基金會下的 Jakarta 項目開發(fā),是目前最流行的 Java Web 服務(wù)器之一。

該漏洞利用條件較為復(fù)雜,需同時滿足以下四個條件:

  • 應(yīng)用程序啟用了 DefaultServlet 寫入功能,該功能默認(rèn)關(guān)閉。
  • 應(yīng)用支持了 partial PUT 請求,能夠?qū)阂獾男蛄谢瘮?shù)據(jù)寫入到會話文件中,該功能默認(rèn)開啟。
  • 應(yīng)用使用了 Tomcat 的文件會話持久化并且使用了默認(rèn)的會話存儲位置,需要額外配置。
  • 應(yīng)用中包含一個存在反序列化漏洞的庫,比如存在于類路徑下的 commons-collections,此條件取決于業(yè)務(wù)實現(xiàn)是否依賴存在反序列化利用鏈的庫。

漏洞威脅等級:高危

受影響的版本

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

關(guān)鍵配置

項目結(jié)構(gòu)

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

項目根路徑下的 pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

  <groupId>cn.demo</groupId>
  <artifactId>demo</artifactId>
  <version>1.0.0</version>

  <name>demo</name>
  <description>demo</description>

  <properties>
    <demo.version>1.0.0</demo.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    
    <tomcat.version>9.0.99</tomcat.version>
    <jakarta.annotation-api.version>1.3.5</jakarta.annotation-api.version>
  </properties>

  <!-- 依賴聲明 -->
  <dependencyManagement>
    <dependencies>
      <!-- SpringBoot的依賴配置-->
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-dependencies</artifactId>
        <version>2.5.14</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <!-- 解決Apache Tomcat 遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2025-24813)-->
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <version>${tomcat.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-el</artifactId>
        <version>${tomcat.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-websocket</artifactId>
        <version>${tomcat.version}</version>
        <exclusions>
          <exclusion>
            <artifactId>tomcat-annotations-api</artifactId>
            <groupId>org.apache.tomcat</groupId>
          </exclusion>
        </exclusions>
      </dependency>
        <dependency>
          <groupId>jakarta.annotation</groupId>
          <artifactId>jakarta.annotation-api</artifactId>
          <version>${jakarta.annotation-api.version}</version>
        </dependency>
    </dependencies>
  </dependencyManagement>

  <modules>
    <module>module</module>
  </modules>

  <packaging>pom</packaging>

  <dependencies>
  </dependencies>

  <build>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.1</version>
          <configuration>
            <source>${java.version}</source>
            <target>${java.version}</target>
            <encoding>${project.build.sourceEncoding}</encoding>
            <parameters>true</parameters>
          </configuration>
        </plugin>
      </plugins>
      <resources>
        <resource>
          <directory>src/main/resources</directory>
          <filtering>true</filtering>
        </resource>
        <resource>
          <directory>src/main/java</directory>
          <includes>
            <include>**/*.xml</include>
          </includes>
        </resource>
      </resources>
  </build>
</project>

module 目錄下的 pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>demo</artifactId>
        <groupId>cn.demo</groupId>
        <version>1.0.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>module</artifactId>

    <description>
        module模塊
    </description>

    <dependencies>
		  <!-- SpringBoot Web容器 -->
        <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
          <exclusions>
            <exclusion>
              <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            </exclusion>
              <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
              </exclusion>
          </exclusions>
      </dependency>

      <!-- websocket -->
      <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-websocket</artifactId>
        <exclusions>
          <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-core</artifactId>
        <exclusions>
          <exclusion>
            <artifactId>tomcat-annotations-api</artifactId>
            <groupId>org.apache.tomcat</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-el</artifactId>
      </dependency>
      <dependency>
        <groupId>org.apache.tomcat.embed</groupId>
        <artifactId>tomcat-embed-websocket</artifactId>
        <exclusions>
          <exclusion>
            <artifactId>tomcat-annotations-api</artifactId>
            <groupId>org.apache.tomcat</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>jakarta.annotation</groupId>
        <artifactId>jakarta.annotation-api</artifactId>
      </dependency>
    </dependencies>
</project>

參考文獻(xiàn)

到此這篇關(guān)于SpringBoot Tomcat漏洞修復(fù)的解決方法的文章就介紹到這了,更多相關(guān)SpringBoot Tomcat漏洞修復(fù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • springmvc整合ssm配置的詳細(xì)代碼

    springmvc整合ssm配置的詳細(xì)代碼

    今天通過實例代碼給大家介紹了springmvc整合ssm配置的詳細(xì)方法,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-11-11
  • springboot使用webservice發(fā)布和調(diào)用接口的實例詳解

    springboot使用webservice發(fā)布和調(diào)用接口的實例詳解

    本文介紹了如何在Springboot中使用webservice發(fā)布和調(diào)用接口,涵蓋了必要的依賴添加和代碼示例,文中提供了服務(wù)端和客戶端的實現(xiàn)方法,以及如何設(shè)置端口和服務(wù)地址,幫助讀者更好地理解和應(yīng)用Springboot結(jié)合webservice的技術(shù)
    2024-10-10
  • 關(guān)于Java中的CAS如何使用

    關(guān)于Java中的CAS如何使用

    這篇文章主要介紹了關(guān)于Java中的CAS如何使用,CAS是Compare And Swap(比較并交換)的縮寫,是一種非阻塞式并發(fā)控制技術(shù),用于保證多個線程在修改同一個共享資源時不會出現(xiàn)競爭條件,從而避免了傳統(tǒng)鎖機(jī)制的各種問題,需要的朋友可以參考下
    2023-09-09
  • SpringBoot參數(shù)校驗之@Validated的使用詳解

    SpringBoot參數(shù)校驗之@Validated的使用詳解

    這篇文章主要通過示例為大家詳細(xì)介紹一下介紹了SpringBoot參數(shù)校驗中@Validated的使用方法,文中的示例代碼講解詳細(xì),需要的可以參考一下
    2022-06-06
  • Java?Web實現(xiàn)簡易圖書管理系統(tǒng)

    Java?Web實現(xiàn)簡易圖書管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java?Web實現(xiàn)簡易圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • 深入了解Spring中的@Autowired和@Resource注解

    深入了解Spring中的@Autowired和@Resource注解

    Spring中的@Autowired和@Resource注解都可以實現(xiàn)依賴注入,但使用方式、注入策略和適用場景略有不同。本文將深入探討這兩種注解的原理、使用方法及優(yōu)缺點,幫助讀者更好地理解和運(yùn)用Spring依賴注入機(jī)制
    2023-04-04
  • 深入理解Spring Cache框架

    深入理解Spring Cache框架

    今天給大家分析一下 Spring 框架本身對這些緩存具體實現(xiàn)的支持和融合。使用 Spring Cache 將大大的減少我們的Spring項目中緩存使用的復(fù)雜度,提高代碼可讀性。本文將從以下幾個方面來認(rèn)識Spring Cache框架。感興趣的小伙伴們可以參考一下
    2018-11-11
  • Java實現(xiàn)FTP文件上傳

    Java實現(xiàn)FTP文件上傳

    FTP 是File Transfer Protocol(文件傳輸協(xié)議)的英文簡稱,而中文簡稱為“文傳協(xié)議”。用于Internet上的控制文件的雙向傳輸。本文將講解如何用Java實現(xiàn)FTP文件上傳
    2021-05-05
  • SpringBoot整合新版SpringSecurity完整過程

    SpringBoot整合新版SpringSecurity完整過程

    Spring Security是保障Spring應(yīng)用程序安全的強(qiáng)大框架,而新版的Spring Security引入了lambda表達(dá)式來配置,使得安全配置更加簡潔、優(yōu)雅,本文將介紹如何在Spring Boot項目中整合新版Spring Security,需要的朋友可以參考下
    2024-02-02
  • Java輕松生成5位隨機(jī)數(shù)

    Java輕松生成5位隨機(jī)數(shù)

    這篇文章主要介紹了Java輕松生成5位隨機(jī)數(shù)的相關(guān)資料,需要的朋友可以參考下
    2023-10-10

最新評論