26.Apache Solr RCE
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了26.Apache Solr RCE,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1422字,纯文字阅读大概需要3分钟。
内容图文
![26.Apache Solr RCE](/upload/InfoBanner/zyjiaocheng/1265/bbc5adde4e6248329fcee469c4ca8143.jpg)
多事之秋,刚爆出来shiro的RCE,紧接着solr服务器就出了RCE
自从漏洞爆出来已经一段时间,复现漏洞多如牛毛,我这里来水一篇
漏洞简介
什么是solr服务器?
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
漏洞产生的原因是什么?
1.当攻击者可以直接访问Solr控制台时,可以通过发送类似/节点名/config的POST请求对该节点的配置文件做更改。
2.Apache Solr默认集成VelocityResponseWriter插件,在该插件的初始化参数中的params.resource.loader.enabled这个选项是用来控制是否允许参数资源加载器在Solr请求参数中指定模版,默认设置是false。
当设置params.resource.loader.enabled为true时,将允许用户通过设置请求中的参数来指定相关资源的加载,这也就意味着攻击者可以通过构造一个具有威胁的攻击请求,在服务器上进行命令执行。
--------360CERT
影响范围
Apache Solr 5.x - 8.2.0,存在config API版本
漏洞复现
环境搭建
本次依然使用P牛的vulhub docker镜像搭建
git clone https://github.com/vulhub/vulhub.git
cd vulhub/solr/CVE-2019-0193
docker-compose up -d
创建名为bmjoker的Core:
docker-compose exec solr bash bin/solr create_core -c bmjoker -d example/example-DIH/solr/db
搭建好后默认端口为8983,访问http://ip:8983 即可
漏洞利用
漏洞利用的前提是需要知道solr服务器中的core的名称才能执行攻击
我这里手动创建了一个core节点:bmjoker
当然漏洞产生原因是可以直接访问Solr控制台,通过发送类似 solr/节点名/config 的POST请求对该节点的配置文件做更改
能进入控制台就能看见core节点的名称
如果看不见的话,尝试去访问 /solr/admin/cores,就能看见创建的全部core节点名称,像这样:
构造POST请求,向 /solr/bmjoker/config 目录POST以下数据(来修改Core的配置)
{ " update-queryresponsewriter " : { " startup ": "lazy", "name": "velocity", "class": "solr.VelocityResponseWriter", "template.base.dir": "", "solr.resource.loader.enabled": "true", "params.resource.loader.enabled": "true" }
接下来使用网上爆出来的
原文:https://www.cnblogs.com/bmjoker/p/11778478.html
内容总结
以上是互联网集市为您收集整理的26.Apache Solr RCE全部内容,希望文章能够帮你解决26.Apache Solr RCE所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。