网络安全检测与防护技术
国家地方联合工程研究中心深圳分中心

靶场科普 | 代码执行实战之Solr

发表时间:2021-07-05 14:30

本文由“网络安全检测与防护技术国家地方联合工程研究中心深圳分中心——东塔网络安全学院”总结归纳

今天,给大家介绍一下“东塔攻防世界”其中的一个靶场:“代码执行实战之Solr”。

一、实验介绍

1.漏洞简介

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。是apache的顶级开源项目,使用java开发 ,基于lucene的全文检索服务器。

2.远程命令执行原理

远程命令执行漏洞,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令,可能会允许攻击者通过改变 $PATH 或程序执行环境的其他方面来执行一个恶意构造的代码。

3.漏洞原因:

由于开发人员编写源码,没有针对代码中可执行的特殊函数入口做过滤,导致客户端可以提交恶意构造语句提交,并交由服务器端执行。命令注入攻击中WEB服务器没有过滤类似system(),eval(),exec()等函数是该漏洞攻击成功的最主要原因。

4.Java ManagementExtensions(JMX)是一种Java技术,为管理和监视应用程序、系统对象、设备(如打印机)和面向服务的网络提供相应的工具。JMX 作为 Java的一种Bean管理机制,如果JMX服务端口暴露,那么远程攻击者可以让该服务器远程加载恶意的Bean文件,随着Bean的滥用导致远程代码执行。

二、实验目的

1.了解Solr漏洞的简介
2.了解Solr漏洞成因
3.熟悉Solr漏洞防御方法

三、实验步骤

1.打开实验连接,查看实验环境;
2.使用渗透工具进行复现,根据解题思路进行实操。

四、防御方式

1.保证 Solr 集群只能被可信任端点访问;
2.启用 Solr JMX 服务身份验证;
3.关闭 Solr JMX 服务。