漏洞预警:Apache Solr 远程代码执行漏洞

  • 2020 年 3 月 10 日
  • 笔记

00×01 漏洞背景

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。2019年10月31日下午,安全研究员s00py在推特上发了一个solr远程代码命令执行的另外一种方法。链接中指出,需设置Set "params.resource.loader.enabled" as true.时,导致命令执行漏洞触发。

00×02 漏洞复现

修改core

{

"update-queryresponsewriter": {

"startup": "lazy",

"name": "velocity",

"class": "solr.VelocityResponseWriter",

"template.base.dir": "",

"solr.resource.loader.enabled": "true",

"params.resource.loader.enabled": "true"

}

}

发送POC

POC地址:https://github.com/wyzxxz/Apache_Solr_RCE_via_Velocity_template

00×03 版本影响

已测7.0.1,7.7.2,8.1.1

00×04 修复建议

1、升级Solr版本;

2、对Solr后台进行身份认证,禁止未授权访问。