近日,海峽信息安全威脅情報中(zhōng)心監測到Spring官方發布安全公告,披露了一(yī)個Spring框架漏洞(CVE-2022-22965),當Java版本>=9時可遠程實現代碼執行,此漏洞影響範圍廣泛,且目前已出現相關利用代碼,危害較大(dà)。目前Spring官方已發布Spring框架安全版本,海峽信息安全應急中(zhōng)心建議受影響單位和用戶立即升級至最新版本。
一(yī)、漏洞描述
Spring 是一(yī)個支持快速開(kāi)發的J2EE 應用程序開(kāi)源框架,是目前較爲流行的 Java 開(kāi)發框架。由于Spring框架存在處理流程缺陷,導緻可遠程代碼執行,攻擊者可在未授權訪問下(xià),通過構造惡意請求可向任意路徑下(xià)寫入文件。
海峽信息已成功複現此漏洞:
二、影響範圍
Spring Framework < 5.3.18
Spring Framework < 5.2.20
或者其衍生(shēng)框架且 目标應用環境中(zhōng)所使用的jdk 版本>=9
三、安全防範建議
目前Spring官方已發布安全補丁,海峽信息提醒各相關單位和用戶要強化風險意識,切實加強安全防範:
1、目前黑盾态勢感知(zhī)、防火(huǒ)牆、IPS等安全設備規則已支持該漏洞攻擊及相關漏洞的檢測,請相關用戶及時升級設備規則庫,相關特征庫已發布到官網:upgrade.html
2、目前Spring官方已發布安全版本:5.2.20.RELEASE與5.3.18版本。建議用戶盡快自查,對受影響的版本及時升級至最新版本:https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement
3、臨時解決方案:
a、在WAF(web應用防火(huǒ)牆)等網絡防護設備上,根據實際部署業務的流量情況,對GET、POST請求方式的流量實現對“*.class.*”、“*.Class.*”等字符串特征的過濾,并在調整過濾規則後,對業務運行情況進行跟蹤測試,避免對業務産生(shēng)影響。
b、在應用系統的項目包下(xià)新建以下(xià)全局類,并保證全局類被Spring 加載到(推薦在Controller 所在的包中(zhōng)添加)。完成類添加後,需對項目進行重新編譯打包和功能驗證測試。并重新發布項目。
四、自查措施
1、首先查看所使用的java版本是否在影響範圍内,可使用“java -version”命令查看,若jdk版本>=9,則可能受此漏洞影響,需進一(yī)步排查應用是否使用Spring框架。
下(xià)圖jdk版本爲 8,則不受此漏洞影響:
2、檢查應用所使用中(zhōng)間件是否爲Tomcat,若不是,暫時不受此漏洞影響,如采用Tomcat中(zhōng)間件,進一(yī)步确認Tomcat是否開(kāi)啓了access日志(zhì)記錄功能,可查看Tomcat配置文件conf/server.xml,若如下(xià)access日志(zhì)配置已注釋,說明未開(kāi)啓access日志(zhì)記錄功能,則暫不受此漏洞影響:
海峽信息已對目前公開(kāi)的攻擊代碼分(fēn)析确認:若Tomcat不開(kāi)啓訪問日志(zhì)功能,無法利用AccessLogValve寫入後門文件。
3、在應用目錄下(xià)搜索是否使用了spring-beans,如果存在 Spring框架的應用組件spring-beans-*.jar,則說明使用了Spring框架,則應用系統可能受此影響
4、若在應用目錄中(zhōng)未搜索到spring-beans-*.jar 文件,則對當前應用所引用的相關jar包進行解壓,并在每個jar解壓目錄及當前應用目錄下(xià)同時搜索是否存在spring-beans-*.jar和CachedIntrospectionResults 類,若存在,則業務系統可能受此漏洞影響。
5、經确認該漏洞利用條件之一(yī):需要SpringMVC開(kāi)發過程中(zhōng)采用綁定參數的數據結構寫法,若項目的開(kāi)發代碼中(zhōng)未使用參數綁定方式,則不受該漏洞影響
附參考鏈接:
https://www.cnvd.org.cn/webinfo/show/7541
https://spring.io/blog/2022/03/31/spring-framework-rce-early-announcement
返回頂部