【紧跟时事】Apache Solr 远程代码执行漏洞

admin 2023年10月26日02:27:02评论72 views字数 2345阅读7分49秒阅读模式

免责声明

本公众号所发布的文章及工具只限交流学习,本公众号不承担任何责任!如有侵权,请告知我们立即删除。

收不到推送的小伙伴,记得星标公众号哦

废话

大哥刚发的 漏洞通告 | Apache Solr 远程代码执行漏洞


【紧跟时事】Apache Solr 远程代码执行漏洞

微步大哥说上传恶意配置文件进行攻击

【紧跟时事】Apache Solr 远程代码执行漏洞

我来猜下大致上传路径:

FOFA语法

app="APACHE-Solr" && title=="Solr Admin"

开始

首先从大哥的提示可以知道,利用路径大概就在/api/schema-designer/*路径下,并且solr本身可以默认未授权访问的,还有版本大概在8.10-9.3

【紧跟时事】Apache Solr 远程代码执行漏洞

找到一个资产如下,未授权访问:

【紧跟时事】Apache Solr 远程代码执行漏洞

访问api/schema-designer路径

【紧跟时事】Apache Solr 远程代码执行漏洞

这是一个JSON格式的响应数据,其中包含了可用的子路径及其对应的请求方法。根据提供的数据,以下是可用的子路径及其对应的请求方法:

  • GET /schema-designer//configs:获取配置信息

  • POST /schema-designer//file:上传文件

  • GET /schema-designer//file:获取文件

  • GET /schema-designer//diff:获取差异

  • GET /schema-designer//collectionsForConfig:获取配置的集合信息

  • GET /schema-designer//sample:获取示例数据

  • GET /schema-designer//download/*:下载指定路径的文件

  • GET /schema-designer//info:获取信息

  • GET /schema-designer//query:查询数据

  • POST /schema-designer//add:添加数据

  • POST /schema-designer//prep:准备数据

  • POST /schema-designer//analyze:分析数据

  • PUT /schema-designer//cleanup:清理数据

  • PUT /schema-designer//update:更新数据

  • PUT /schema-designer//publish:发布数据

根据通告可以发现需要创建Schema Designer,利用该功能才能上传文件

找到这个功能:

【紧跟时事】Apache Solr 远程代码执行漏洞


访问后下图可知,这里可以分别创建新的Schema和上传文件。

【紧跟时事】Apache Solr 远程代码执行漏洞

新建Schema抓包,如下图,其中test即为新建Schema的名称

【紧跟时事】Apache Solr 远程代码执行漏洞

请求如下:

 POST /api/schema-designer/prep?_=1698050271144&configSet=test&copyFrom=_default&wt=json HTTP/1.1 Host:  Content-Length: 0 Accept: application/json, text/plain, */* X-Requested-With: XMLHttpRequest User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 Content-Type: application/json;charset=utf-8 Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 Connection: close

选择文件并点击分析上传,这里我选了个图片:

图中提示图片不允许

【紧跟时事】Apache Solr 远程代码执行漏洞

改了后缀还是图片不允许

【紧跟时事】Apache Solr 远程代码执行漏洞

我直接把Content Type删掉,提示我说只允许CSV/TSV,XML,JSON

【紧跟时事】Apache Solr 远程代码执行漏洞

下面我把Content Type改成json的形式,出现了JSON参数错误

【紧跟时事】Apache Solr 远程代码执行漏洞


但这个我觉得应该就是利用的地方,微步大哥利用时的报错和我数据包的末尾几乎相似,我猜可能是在分析的同时执行了上传文件内的恶意代码。

【紧跟时事】Apache Solr 远程代码执行漏洞

【紧跟时事】Apache Solr 远程代码执行漏洞

那如果没猜错的话

这个上传的数据包就可以是如下:

POST /api/schema-designer/analyze?_=1698050271144&configSet=test&languages=*&wt=json HTTP/1.1 Host:  Content-Length: 218300 Accept: application/json, text/plain, */* X-Requested-With: XMLHttpRequest User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryzGHoYcY5St7YFia9 Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 Connection: close  ------WebKitFormBoundaryzGHoYcY5St7YFia9 Content-Disposition: form-data; name="file"; filename="solr.in或者solr.sh 根据系统" Content-Type: application/json  这里是恶意代码 ------WebKitFormBoundaryzGHoYcY5St7YFia9--

最终的利用应该就是先发送新建Schema的数据包,再发送上传的数据包

总结

我瞎说的,我其实根本不懂,别骂我,要是有真POC告诉我咋利用再骂我

【紧跟时事】Apache Solr 远程代码执行漏洞

原文始发于微信公众号(浪飒sec):【紧跟时事】Apache Solr 远程代码执行漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年10月26日02:27:02
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【紧跟时事】Apache Solr 远程代码执行漏洞http://cn-sec.com/archives/2139715.html

发表评论

匿名网友 填写信息