「漏洞預警」Apache Solr基於Velocity模板的遠程命令執行漏洞

2019年10月末,白帽匯安全研究院發現網絡上出現針對Apache Solr服務器的遠程代碼執行漏洞。該漏洞是由於Velocity模板存在注入所致(Velocity是一個基於Java的模板引擎,可讓使用者通過模板語言引用Java中定義的對象)。攻擊者在知道Solr服務器上Core名稱後,先把params.resource.loader.enabled設置為true(就可加載指定資源),再進行遠程執行命令。

Apache Solr 是一個開源的搜索服務器。Solr 使用 Java 語言開發,主要基於 HTTP 和 Apache Lucene 實現。Apache Solr 中存儲的資源是以 Document 為對象進行存儲的。每個文檔由一系列的 Field 構成,每個 Field 表示資源的一個屬性。——百度百科

概況

目前FOFA系統最新數據(一年內數據)顯示全球範圍內共有9155個Solr服務對外開放。美國使用數量最多,共有3427個,中國第二,共有1418個,德國第三,共有870個,愛爾蘭第四,共有449臺,法國第五,共有312個。

全球範圍內Solr服務分佈情況如下(僅為分佈情況,非漏洞影響情況)

「漏洞預警」Apache Solr基於Velocity模板的遠程命令執行漏洞

中國大陸地區浙江省使用數量最多,共有742個,北京市第二,共有263個,廣東省第三,共有63個,江蘇省第四,共有41個,上海市第五,共有28個。

「漏洞預警」Apache Solr基於Velocity模板的遠程命令執行漏洞

危害等級

嚴重

漏洞復現

從目前情況來看,攻擊者需要先獲取Solr服務中的Core名稱才能執行攻擊,例如某個存在權限管控不嚴的Solr的服務器。我們可以從Logging或Core admin欄目得知Core名稱。

「漏洞預警」Apache Solr基於Velocity模板的遠程命令執行漏洞

然後通過POST請求把params.resource.loader.enabled設置為True,此時用戶就可以加載指定資源,也就是構造一個能執行命令的惡意請求。

「漏洞預警」Apache Solr基於Velocity模板的遠程命令執行漏洞

最後進行攻擊,可直接從回顯中看到命令執行結果。

「漏洞預警」Apache Solr基於Velocity模板的遠程命令執行漏洞

漏洞影響

Solr最新版本8.2.0受到漏洞影響,版本小於8.2.0的Solr服務尚未測試。

漏洞POC

https://gist.githubusercontent.com/s00py/a1ba36a3689fa13759ff910e179fc133/raw/fae5e663ffac0e3996fd9dbb89438310719d347a/

CVE編號

暫無

修復建議

目前,官方尚未發佈相關漏洞的安全補丁,請及時關注官方更新,網址:http://lucene.apache.org/solr/downloads.html

參考

[1] http://lucene.apache.org/solr/

[2] https://gist.githubusercontent.com/s00py/a1ba36a3689fa13759ff910e179fc133/raw/fae5e663ffac0e3996fd9dbb89438310719d347a/

[3] https://github.com/veracode-research/solr-injection#7-cve-2019-xxxx-rce-via-velocity-template-by-_s00py

[4] https://mp.weixin.qq.com/s/RWG7nxwCMtlyPnookXlaLA

白帽匯從事信息安全,專注於安全大數據、企業威脅情報。

公司產品:FOFA-網絡空間安全搜索引擎、FOEYE-網絡空間檢索系統、NOSEC-安全訊息平臺。

為您提供:網絡空間測繪、企業資產收集、企業威脅情報、應急響應服務。


分享到:


相關文章: