本文以云上环境为例,从挖矿蠕虫的防御、检测和入侵后如何迅速止血三方面来介绍阿里云云防火墙如何全方位抵御挖矿蠕虫。

根据阿里云安全团队发布的《2018年云上挖矿分析报告》显示,过去一年中,每一波热门0 Day的出现都伴随着挖矿蠕虫的爆发性传播,挖矿蠕虫可能因为占用系统资源导致业务中断,甚至还有部分挖矿蠕虫同时会捆绑勒索病毒(如XBash等),给企业带来资金与数据的损失。

挖矿蠕虫是如何传播的?

据阿里云安全团队观察,云上挖矿蠕虫主要利用网络上普遍存在的通用漏洞和热门的0 Day/N Day漏洞进行传播。

  • 通用漏洞利用

    过去一年挖矿蠕虫普遍会利用网络应用上广泛存在的通用漏洞(如配置错误、弱密码等),对互联网持续扫描和攻击,以对主机进行感染。

    近期活跃的挖矿蠕虫广泛利用的通用漏洞如下。
    通用漏洞名称 挖矿蠕虫家族
    SSH、RDP、Telnet爆破 MyKings、RDPMiner
    Redis写Crontab执行命令 DDG、Watchdogs、Kworkerd、8220
    MySQL/SQLServer利用UDF执行命令 Bulehero、MyKings、ProtonMiner
    CouchDB执行命令 8220
  • 0 Day/N Day漏洞利用

    0 Day/N Day在网络上未被修复的窗口期也会被挖矿蠕虫利用,迅速进行大规模的感染。

    近期活跃的挖矿蠕虫利用的热门0 Day/N Day漏洞如下。
    0 Day/N Day漏洞名称 挖矿蠕虫家族

    ThinkPHP V5系列任意代码执行

    Apache ActiveMQ任意代码执行(CVE-2015-5254)

    iBus
    Confluence远程命令执行(CVE-2019-3396) watchdogs(ksoftirqds、kerberods)

    Nexus Repository Manager 3远程代码执行(CVE-2019-7238)

    ThinkPHP V5系列任意代码执行

    watchbog

    WebLogic (CVE-2017-10271)

    Drupal 远程代码执行(CVE-2018-7600)

    JBOSS 5.x/6.x反序列化命令执行(CVE-2017-12149)

    8220
    MS17-010永恒之蓝(CVE-2017-0143) MyKings

    ThinkPHP V5系列任意代码执行

    Tomcat远程代码执行漏洞(CVE-2017-12615)

    WebLogic WLS组件漏洞(CVE-2017-10271)

    Bulehero
    MS17-010永恒之蓝(CVE-2017-0143) WannaMine
    ThinkPHP V5系列任意代码执行 Sefa

    Hadoop Yarn未授权访问

    Drupal 远程代码执行(CVE-2018-7600)

    Elasticsearch命令执行(CVE-2014-3120)

    WebLogic WLS组件漏洞(CVE-2017-10271)

    ProtonMiner

    Tomcat远程代码执行漏洞(CVE-2017-12615)

    JBOSS 5.x/6.x反序列化命令执行(CVE-2017-12149)

    WebLogic WLS组件漏洞(CVE-2017-10271)

    Satan

云防火墙如何防御挖矿蠕虫?

阿里云云防火墙作为业界首款公共云环境下的SaaS化防火墙,应用可透明接入,对云上进出网络的恶意流量进行实时检测与阻断,能有效防御挖矿蠕虫。

  • 通用漏洞的防御

    针对挖矿蠕虫对SSH/RDP等进行暴力破解的攻击方式,云防火墙的基础防御支持常规的暴力破解检测方式,如登录或试错频次阈值计算,对超过试错阈值的行为进行IP限制,还可用户的访问习惯、访问频率基线的基础上,结合行为模型,保证用户正常访问不被拦截的同时对异常登录进行限制。

    针对一些通用的漏洞利用方式(如利用Redis写Crontab执行命令、数据库UDF进行命令执行等),云防火墙的基础防御基于阿里云的大数据优势,利用阿里云安全在云上攻防对抗中积累的大量恶意攻击样本,形成精准的防御规则,具有极高的准确性。

    您可通过开启云防火墙的基础防御来防御通用漏洞。

    开启云防火墙的基础防御功能
    1. 登录云防火墙控制台
    2. 定位到安全策略 > 入侵防御 > 基础防御
    3. 开启基础规则威胁情报
    4. 网络流量分析 > IPS阻断分析页面的IPS阻断列表中查看详细的拦截日志。

  • 0 Day/N Day漏洞防御

    热门0 Day/N Day漏洞修复不及时,被挖矿蠕虫利用感染的风险较大。云防火墙通过结合全网部署的蜜罐分析异常攻击流量和阿里云先知平台漏洞情报的共享,可及时发现针对0 Day/N Day的漏洞利用,第一时间获取漏洞PoC/Exp,并落地形成虚拟补丁,在与黑客的攻防对抗中占得时间先机。

    您可通过开启云防火墙的虚拟补丁来防御0 Day/N Day漏洞。

    开启云防火墙的虚拟补丁功能
    1. 登录云防火墙控制台
    2. 定位到安全策略 > 入侵防御 > 虚拟补丁
    3. 单击开启补丁开关打开虚拟补丁功能。
    4. 单击虚拟补丁模块右下方的自定义选择,打开虚拟补丁管理对话框,查看或管理已开启的虚拟补丁信息。

云防火墙如何检测出挖矿蠕虫?

检测原理

在与蠕虫攻防对抗中,即使在公网边界做好入侵防御措施,仍有可能感染挖矿蠕虫。比如挖矿蠕虫可以通过VPN直接由开发机传播到生产网,也有由于运维使用的系统镜像、Docker镜像就已经被植入挖矿病毒,从而导致大规模感染的爆发。

云防火墙通过NTA(Network Traffic Analysis)能力提供入侵检测功能,能够及时并有效发现挖矿蠕虫感染事件。

利用云上强大的威胁情报网,云防火墙可以及时发现常见货币的矿池地址、检测挖矿木马的下载行为和常见的矿池通信协议,实时识别主机的挖矿行为,并及时告警。

您可通过开启云防火墙入侵检测功能的一键防御来检测挖矿蠕虫,并在网络端阻断挖矿木马与矿池的通信。

开启云防火墙入侵检测一键防御
  1. 登录云防火墙控制台
  2. 定位到网络流量分析 > 入侵检测
  3. 在入侵检测列表中单击一键防御 > 拦截模式

    您可以根据事件详情页面提供的外联地址信息,在主机端定位到相应的进程并进行快速清理。

入侵后如何使用云防火墙快速止血?

若服务器已感染挖矿蠕虫,云防火墙可以从恶意文件下载阻断、中控通信拦截、重点业务区加强访问控制三方面控制蠕虫进一步传播,减少业务和数据的进一步损失。

  • 恶意文件下载阻断

    云防火墙基础防御能力会实时更新常见挖矿蠕虫的各类恶意文件的唯一性特征码和文件模糊hash,在挖矿蠕虫入侵成功/进一步下载更新新的攻击载荷时,会对下载至服务器的文件在流量中进行文件还原及特征匹配,对检测到尝试下载恶意文件时进行告警并阻断。

    服务器在感染挖矿蠕虫后通常会进行恶意文件下载,云防火墙 基础防御功能集成恶意文件检测能力,实时更新常见挖矿蠕虫的各类恶意文件的唯一性特征码和文件模糊hash,在挖矿蠕虫入侵成功/进一步下载更新的攻击载荷时,会对下载至服务器的文件在流量中进行文件还原及特征匹配等安全检测,在检测到尝试下载恶意文件时进行告警并阻断。

    您可通过开启云防火墙的入侵防御 > 基础防御对恶意文件下载进行阻断。

  • 中控通信拦截
    在感染挖矿蠕虫后,针对挖矿蠕虫可能和C&C控制端进行通信,接收进一步的恶意行为指令或者向外泄漏敏感数据等,云防火墙的基础防御功能进行实时拦截主要通过以下三个方面来实现:
    • 通过分析和监控全网蠕虫数据和中控服务器通讯流量,可以对异常通讯流量特征化,落地形成中控通信检测特征,通过实时监控中控通信变化,不断的提取攻击特征,确保及时检测到攻击行为。
    • 通过自动学习历史流量访问信息,建立异常流量检测模型,挖掘潜在的未知挖矿蠕虫信息。
    • 利用大数据可视化技术对全网IP访问行为关系进行画像,利用机器学习发现异常IP及访问域,并联动全网攻击数据,最终落地形成中控威胁情报库,从而可以对服务器流量通信进行情报匹配,实时阻断恶意的中控连接通信。
    通过基础防御和威胁情报对中控通信拦截的记录如下。

    您可通过开启云防火墙的入侵防御 > 基础防御对中控通信进行拦截。

  • 重点业务区强访问控制

    重点业务通常需要对整个互联网开放服务或端口,而来自互联网的扫描、攻击会对企业的资产形成威胁,对外部的访问控制很难做到细粒度管控。而对某一台ECS、某一个EIP或内部网络主动外联场景下,域名或IP数量其实都是可控的,因为该类外联通常都是进行合法的外联访问,例如DNS、NTP服务等,少量企业自身业务需要也通常只是少许特定IP或域名。因此通过内对外的域名或IP访问控制,可有效防止ECS主机被入侵之后,在恶意域名下拉挖矿木马或木马与C&C进行通信等行为。

    云防火墙支持访问控制功能,支持域名(含泛域名)和IP配置。针对重点业务的安全问题,可以通过配置一个强粒度的内到外访问控制策略,即重要业务端口只允许特定域名或者特定的IP进行访问,其他一律禁止。通过该操作可以有效的杜绝挖矿蠕虫下载、对外传播,防止入侵后阶段的维持与获利。

    例如以下场景中,内网对外访问的总IP数为6个,其中NTP全部标识为阿里云产品,而DNS为我们所熟知的8.8.8.8,通过云防火墙的安全建议,我们可以将上述6个IP进行放行,而对其他IP访问进行全部拒绝。通过如上的配置,在不影响正常业务访问的情况下,防止其他对外连接行为,如恶意下载、C&C通信等。

    您可通过云防火墙的安全策略 > 访问控制 > 互联网边界防火墙 > 内对外创建内对外访问控制策略,对可信的外网IP进行放行,而对其他IP访问全部拒绝。

由于互联网上持续存在的通用应用漏洞、0 Day漏洞的频发、以及挖矿变现的高效率,挖矿蠕虫大规模蔓延。云上客户可以透明接入云防火墙,保护自身应用不受互联网上各种恶意攻击的威胁。同时依托云上海量的计算能力,能够更快的感知最新的攻击威胁、并且联动全网的威胁情报给用户最佳的安全防护,使用户免于挖矿蠕虫威胁。云防火墙可以伴随客户业务水平弹性扩容,让客户更多的关注业务的扩展,无需花费更多精力投入在安全上。