Spring Cloud Function SpEL注入漏洞(CVE-2022-22963)分析?
延伸閱讀,了解Akamai強(qiáng)大的安全解決方案!
一、概述
2022年3月24日,Pivotal修補(bǔ)了Spring Cloud Function中一個(gè)關(guān)鍵的服務(wù)器端代碼注入漏洞(Spring表達(dá)式語言注入),該漏洞有可能導(dǎo)致系統(tǒng)被攻擊。Spring是一種流行的開源Java框架,該漏洞與另一個(gè)相關(guān)的遠(yuǎn)程代碼執(zhí)行(RCE)漏洞(Spring Core,即“Spring4Shell”)均可通過Akamai Adaptive Security Engine (ASE) Kona Site Defender (KSD)規(guī)則集有效防御。
本文將重點(diǎn)分析Spring Cloud漏洞,有關(guān)Spring Core漏洞的詳情請(qǐng)參閱這里。
Spring Cloud Function技術(shù)可實(shí)現(xiàn)業(yè)務(wù)邏輯與特定運(yùn)行時(shí)之間的解耦。Spring表達(dá)式語言(SpEL)作為一種強(qiáng)大的表達(dá)式語言,已在各類Spring產(chǎn)品中實(shí)現(xiàn)了廣泛應(yīng)用,支持在運(yùn)行時(shí)查詢和操作對(duì)象圖。過去,當(dāng)應(yīng)用程序以不安全的方式評(píng)估不受信任的用戶輸入的代碼表達(dá)式時(shí),很多遠(yuǎn)程代碼執(zhí)行方面的常見漏洞和暴露(CVE)都是圍繞SpEL注入產(chǎn)生的(參見圖1)。
圖1:GitHub上的Spring Cloud Function代碼路徑
幾天后,3月26日,GitHub用戶“cckuailong”發(fā)布了一個(gè)概念驗(yàn)證漏洞,展示了對(duì)該漏洞的成功利用(圖2)。
圖2:公開的概念證實(shí)利用
隨后不到一天的時(shí)間里,Akamai就觀察到整個(gè)互聯(lián)網(wǎng)上開始出現(xiàn)相關(guān)利用。
圖3:3月27日開始的利用企圖(來源:某客戶的Akamai Web Security Analytics分析結(jié)果)
與Log4j類似,很多(并非全部)當(dāng)前企圖都是“Ping Back”類型的探測(cè),攻擊者只是在能夠成功利用的情況下發(fā)出一個(gè)信標(biāo)。
二、漏洞
通過補(bǔ)丁程序逆推可知,該漏洞可通過“spring.cloud.function.routing-expression”HTTP頭來接收SpEL表達(dá)式,進(jìn)而方便應(yīng)用程序進(jìn)行路由。

三、使用KSD自適應(yīng)安全引擎加以緩解

Akamai自適應(yīng)安全引擎(ASE)可通過廣泛的內(nèi)置規(guī)則來檢測(cè)命令注入,因?yàn)楹芏啻祟惞舻哪繕?biāo)都是執(zhí)行操作系統(tǒng)級(jí)別的命令。ASE能夠利用現(xiàn)有命令注入規(guī)則檢測(cè)到這個(gè)零日攻擊:
- 3000041 – 服務(wù)器端模板注入
- 3000156 – CMD注入檢測(cè)(PHP High-Risk Functions)
四、總結(jié)
雖然Spring Cloud Function的使用不像Log4j那么廣泛,但這個(gè)漏洞易于利用的特點(diǎn)依然會(huì)吸引很多攻擊者。Akamai預(yù)計(jì)該漏洞會(huì)引發(fā)很多以數(shù)字貨幣盜挖、DDoS攻擊、勒索軟件為目標(biāo)的攻擊,并且可能成為未來很長(zhǎng)一段時(shí)間里潛入組織內(nèi)網(wǎng)的有效途徑。不過Akamai客戶已經(jīng)可以通過Akamai Adaptive Security Engine和Kona Site Defender規(guī)則集獲得充分保護(hù)。
Akamai的威脅研究團(tuán)隊(duì)也將繼續(xù)監(jiān)控該漏洞的發(fā)展,并在出現(xiàn)新情況后及時(shí)通知大家。歡迎關(guān)注Akamai,第一時(shí)間了解最新近況。
延伸閱讀,了解Akamai強(qiáng)大的安全解決方案!
歡迎關(guān)注 Akamai ,第一時(shí)間了解高可用的 MySQL/MariaDB 參考架構(gòu),以及豐富的應(yīng)用程序示例。