總機(jī):020-87516161 傳真:020-87516161-8040
地址:廣州市天河北路898號(hào)信源大廈3206-3211室 郵編:510660
安全服務(wù) > 安全公告 > 關(guān)于Spring Boot框架存在SPEL表達(dá)式注入漏洞的安全公告
安全公告編號(hào):CNTA-2016-0031
近日,國家信息安全漏洞共享平臺(tái)(CNVD)收錄了Spring Boot框架存在的SPEL表達(dá)式注入漏洞(CNVD-2016-04742)。遠(yuǎn)程攻擊者利用漏洞可在服務(wù)器端執(zhí)行相關(guān)指令或代碼,有可能遠(yuǎn)程滲透控制網(wǎng)站服務(wù)器。由于該應(yīng)用框架使用范圍廣泛,構(gòu)成較高的安全威脅。
一、漏洞情況分析
Spring是一款輕量級(jí)Java開發(fā)框架。Spring Boot是Spring 的一個(gè)核心子項(xiàng)目,其設(shè)計(jì)目的是用于簡化新Spring應(yīng)用的初始搭建以及開發(fā)過程。
由于SpelView類中的exactMatch參數(shù)未嚴(yán)格過濾,Spring Boot framework 對(duì)異常處理不當(dāng)在同時(shí)開啟whitelabel page,會(huì)造成異常請(qǐng)求中注入SPEL執(zhí)行。當(dāng)用戶采用Spring Boot啟動(dòng)Spring MVC項(xiàng)目后,Spring Boot默認(rèn)異常模板在處理異常信息時(shí),會(huì)遞歸解析SPEL表達(dá)式,可導(dǎo)致SPEL表達(dá)式注入并執(zhí)行。攻擊者利用此漏洞,通過SPEL即可在服務(wù)器端實(shí)現(xiàn)指令注入(執(zhí)行代碼)。
CNVD對(duì)該漏洞的綜合評(píng)級(jí)為“高危”。
二、漏洞影響范圍
漏洞影響Spring Boot 1.1-1.3.0版本,使用上述版本框架構(gòu)建的網(wǎng)站可能受漏洞影響。
三、漏洞修復(fù)建議
目前,互聯(lián)網(wǎng)上已披露了該漏洞的利用代碼。近期,WOOYUN網(wǎng)站提交者唐朝實(shí)驗(yàn)室也提交了對(duì)于漏洞的詳細(xì)說明,并將于約90天后公開。廠商已發(fā)布了升級(jí)程序修復(fù)該漏洞,CNVD建議用戶將程序升級(jí)至Spring Boot 1.3.1及以上版本。更新地址:
https://github.com/spring-projects/spring-boot/commit/edb16a13ee33e62b046730a47843cb5dc92054e6
附:參考鏈接:
https://github.com/spring-projects/spring-boot/issues/4763
http://www.cnvd.org.cn/flaw/show/CNVD-2016-04742
http://www.wooyun.org/bugs/wooyun-2016-0226888(WOOYUN網(wǎng)站報(bào)告)
http://blog.nsfocus.net/spel-vulnerability-technical-analysis-and-protection-scheme/
(注:本公告重點(diǎn)參考了CNVD技術(shù)組成員單位——綠盟科技公司提供的相關(guān)分析結(jié)果)