原文:
https://nosec.org/home/detail/4983.html
logo_20220329193457.png (1157×477) (nosec.org)
近日,Spring 官方 GitHub issue中提到了關于 Spring Core 的遠端指令執行漏洞,該漏洞廣泛存在于Spring 架構以及衍生的架構中。
漏洞描述
Spring core是Spring系列産品中用來負責發現、建立并處理bean之間的關系的一個工具包,是一個包含Spring架構基本的核心工具包,Spring其他元件都要使用到這個包。
未經身份驗證的攻擊者可以使用此漏洞進行遠端任意代碼執行。 該漏洞廣泛存在于Spring 架構以及衍生的架構中,JDK 9.0及以上版本會受到影響。使用舊JDK版本的産品不受影響。建議存在該漏洞的企業在防火牆處阻止帶有特殊字元串的請求,以免受到該漏洞的攻擊。
漏洞複現
白帽彙漏洞研究院已認證漏洞複現确認漏洞存在。
reright_20220329204302.png (1331×461) (nosec.org)
FOFA 查詢
app="APACHE-Tomcat" || app="vmware-SpringBoot-framework" || app="vmware-SpringBoot-framework" || app="vmware-Spring-Batch" || app="vmware-Spring-framework" || app="vmware-Spring-Security"
影響範圍
Spring 架構以及衍生的架構會受到影響。(JDK 版本需在9.0及以上。)
根據目前FOFA系統最新資料(一年内資料),顯示全球範圍内(上述FOFA查詢語句)共有 7,023,506 個相關服務對外開放。中國使用數量最多,共有 2,987,121 個;美國第二,共有 1,215,955 個;巴西第三,共有 381,319 個;南韓第四,共有 219,201 個;德國第五,共有 213,097 個。
全球範圍内分布情況如下(僅為分布情況,非漏洞影響情況)
global.png (963×470) (nosec.org)
中國大陸地區北京使用數量最多,共有 394,664 個;廣東第二,共有 303,535 個;浙江第三,共有 293,119 個;上海第四,共有 262,491 個;山東第五,共有 142,296 個。
CN_20220329193434.png (963×493) (nosec.org)
Vulfocus 靶場環境
目前 Vulfocus 已經內建 Spring Core 環境,可通過以下連結啟動環境測試:
Spring fr amework Corce 遠端指令執行漏洞
也可通過 vulfocus/spring-core-rce-2022-03-29:latest 拉取本地環境運作。
vul_20220329222228.png (898×271) (nosec.org)
修複建議
更新Spring Framework 版本
Spring Framework == 5.3.18 Spring Framework == 5.2.20
臨時防禦方案:
1、 WAF防禦。
可以在WAF中添加以下規則對特殊輸入的字元串進行過濾:
Class.* class.* *.class.* *Class.*
2、通過黑名單政策進行防護。
您可在受影響産品代碼中搜尋@InitBinder注解,判斷方法體内是否有dataBinder.serDisallowerFields方法,若發現存在該方法,則在黑名單中添加如下過濾規則:
Class.* class.* *.class.* *Class.*