最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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)文章

  • Java的RTTI和反射機(jī)制代碼分析

    Java的RTTI和反射機(jī)制代碼分析

    這篇文章主要涉及了Java的RTTI和反射機(jī)制代碼分析的相關(guān)內(nèi)容,在介紹運行時類型識別的同時,又向大家展示了其實例以及什么時候會用到反射機(jī)制,內(nèi)容豐富,需要的朋友可以參考下。
    2017-09-09
  • 關(guān)于Springboot日期時間格式化處理方式總結(jié)

    關(guān)于Springboot日期時間格式化處理方式總結(jié)

    這篇文章主要介紹了關(guān)于Springboot日期時間格式化處理方式總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • 如何利用 Either 和 Option 進(jìn)行函數(shù)式錯誤處理

    如何利用 Either 和 Option 進(jìn)行函數(shù)式錯誤處理

    這篇文章主要介紹了如何利用 Either 和 Option 進(jìn)行函數(shù)式錯誤處理。在 Java 中,錯誤的處理在傳統(tǒng)上由異常以及創(chuàng)建和傳播異常的語言支持進(jìn)行。但是,如果不存在結(jié)構(gòu)化異常處理又如何呢?,需要的朋友可以參考下
    2019-06-06
  • Spring boot + LayIM + t-io 實現(xiàn)文件上傳、 監(jiān)聽用戶狀態(tài)的實例代碼

    Spring boot + LayIM + t-io 實現(xiàn)文件上傳、 監(jiān)聽用戶狀態(tài)的實例代碼

    這篇文章主要介紹了Spring boot + LayIM + t-io 實現(xiàn)文件上傳、 監(jiān)聽用戶狀態(tài)的實例代碼,需要的朋友可以參考下
    2017-12-12
  • 簡述Java異步上傳文件的三種方式

    簡述Java異步上傳文件的三種方式

    這篇文章主要為大家詳細(xì)介紹了Java異步上傳文件的三種方式,感興趣的小伙伴們可以參考一下
    2016-03-03
  • 基于SpringMVC的全局異常處理器介紹

    基于SpringMVC的全局異常處理器介紹

    下面小編就為大家?guī)硪黄赟pringMVC的全局異常處理器介紹。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Spring依賴注入與自動裝配原理解析

    Spring依賴注入與自動裝配原理解析

    本文講解Spring依賴注入核心知識:闡釋 Bean、IoC 等概念,介紹三種注入方式(推薦構(gòu)造器注入),解析 @Autowired 自動裝配原理、注解差異及循環(huán)依賴等問題的解決辦法,感興趣的朋友跟隨小編一起看看吧
    2026-02-02
  • @NotEmpty、@NotBlank、@NotNull的區(qū)別

    @NotEmpty、@NotBlank、@NotNull的區(qū)別

    這篇文章主要介紹了@NotEmpty、@NotBlank、@NotNull的區(qū)別,需要的朋友可以參考下
    2016-09-09
  • SpringBoot與Redis的令牌主動失效機(jī)制實現(xiàn)

    SpringBoot與Redis的令牌主動失效機(jī)制實現(xiàn)

    本文詳細(xì)介紹了基于SpringBoot和Redis實現(xiàn)令牌主動失效機(jī)制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • JavaMail郵件發(fā)送機(jī)制詳解

    JavaMail郵件發(fā)送機(jī)制詳解

    這篇文章主要介紹了JavaMail郵件發(fā)送機(jī)制詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11

最新評論

宁武县| 绥化市| 林州市| 海盐县| 新蔡县| 南昌县| 西平县| 霸州市| 手机| 衡阳市| 莱州市| 涿鹿县| 巍山| 桓台县| 中阳县| 云安县| 绥棱县| 平泉县| 南京市| 沙坪坝区| 五华县| 五台县| 玛纳斯县| 乌鲁木齐县| 来凤县| 泗阳县| 农安县| 西昌市| 六盘水市| 昌吉市| 林西县| 从化市| 龙山县| 浠水县| 阜阳市| 甘德县| 安阳市| 寻甸| 唐海县| 云梦县| 巴马|