【漏洞预警】Apache Solr Velocity远程代码执行漏洞处置手册

  • 2019 年 11 月 6 日
  • 笔记

预警编号:NS-2019-0046

2019-10-31

TAG:

Apache Solr、Velocity、远程代码执行

漏洞危害:

高,攻击者利用此漏洞,可造成远程代码执行。

版本:

1.0

1

漏洞概述

10月30日,@_S00pY公开了Apache Solr 远程代码执行漏洞的利用方式,攻击者可通过Velocity模板实现远程代码执行。经测试,该漏洞可以成功触发,且官方未发布安全补丁。

此漏洞的触发需要两步完成,首先攻击者需通过config API将"params.resource.loader.enabled"配置项修改为true;再通过发送恶意velocity模板完成漏洞触发。

部分PoC代码如下:

利用成功后可在服务端执行任意命令。

SEE MORE →

2影响范围

受影响版本

  • Apache Solr <= 8.2.0 (存在config API的版本均可能受此漏洞影响)

3漏洞检测

3.1 人工检测

满足下面任意一项,当前系统均可能受此漏洞影响。

1、可访问http://hostname/solr/实例名/config,config API开放。

2、在实例的配置目录下存在configoverlay.json文件,且其中有"params.resource.loader.enabled":"true"配置项,默认情况下不存在configoverlay.json文件。

3、在全局配置文件solrconfig.xml中,“params.resource.loader.enabled”配置项为“true”。

4漏洞防护

4.1 产品防护

部署有绿盟科技网络入侵防护系统(IPS)的用户,可实现对此漏洞的防护,对应规则:23982。

4.2 临时缓解措施

1、用户可通过在访问控制上禁用对/solr/实例名/config路径的访问。

2、若configoverlay.json 配置文件中存在"params.resource.loader.enabled":"true"配置项。将其改为false。

3、若solrconfig.xml配置文件中,VelocityResponseWriter中存在如下配置<bool name="params.resource.loader.enabled">true</bool>,将其修改为false。

4、 添加安全认证,详细配置方法可参考官方文档:

http://lucene.apache.org/solr/guide/8_2/basic-authentication-plugin.html#basic-authentication-plugin

END

作者:绿盟科技安全服务部

声明

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。

绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。