Docker服务器被滥用于释放加密货币挖矿机和DDoS僵尸主机

微信扫一扫,分享到朋友圈

Docker服务器被滥用于释放加密货币挖矿机和DDoS僵尸主机

恶意攻击者持续关注和攻击运行Docker容器的目标环境。研究人员近期发现一起攻击使用Alpine Linux的Docker 容器来释放恶意加密货币挖矿机和DDoS 僵尸主机的活动。早在今年5月,研究人员也发现一起类似的攻击活动。

感染链分析

在该攻击活动中,感染首先是从连接到暴露的Docker 服务器开始的,然后创建和运行一个Docker 容器。在Docker 容器中,执行的命令如图1所示:

图 1. 在Docker 容器中执行的命令代码段

XMI 下载文件是一个bash脚本,如图2所示,会使用/.ssh/known_hosts 中的信息在同一容器网络内传播到其他主机中。

图 2.  攻击中使用的bash脚本代码段

图3中的命令执行后会下载和执行XMI bash脚本和一个名为“d.py” 的python脚本。

图 3. 发送给目标的命令代码段

XMI shell脚本会使用Base64 编码方式来绕过检测。解码后的字符串如图3所示会生成图4中的命令,该命令会下载和执行 d.py。

图 4. 下载和执行“d.py” 组件的代码段(解码后)

如图5所示,XMI bash脚本中含有注释的命令的shell脚本看似是通过SSH 暴力破解来传播恶意软件的。攻击活动背后的攻击者过去主要攻击SSH 服务器。

图 5. XMI bash脚本中含有注释的代码段

攻击活动使用多种技术来建立驻留。除了设置cron作业外,还会创建自动payload 执行的服务,如图6所示。

图 6. 使用cron作业来实现驻留的代码段

创建服务的部分也是base64编码的。解码后会放在/etc/init.d 目录中,如图7所示。

图 7. 放在/etc/init.d 目录中的脚本解码后的代码段

研究人员检测到了加密货币挖矿的payload,下载的脚本如图8所示。攻击者使用的加密货币钱包与一起CVE-2019-3396漏洞利用和Apache Struts CVE-2017-5638漏洞利用活动中使用的加密货币钱包相同。

图 8. 加密货币挖矿payload 下载的代码段

为检查恶意payload是否成功释放,恶意软件还会用一个计算和验证128位 MD5 哈希值的程序——md5sum。验证方法与Kinsing 恶意软件使用的方法类似。

此外,攻击活动还会释放一个DDoS 僵尸主机,如图9所示:

图 9. 下载和执行的释放器脚本代码段

DDoS 主机的部分后门命令如图10所示,DDoS 主机是基于IRC的,看似是Kaiten的一个变种,其C2 服务器是c4k[.]xpl[.]pwndns[.]pw,104[.]244[.]75[.]25和 107[.]189[.]11[.]170。

图 10. DDoS 主机后门命令相关的代码段

d.py会建立驻留和释放加密货币挖矿机以及DdoS 主机payload。D.py代码段如图11所示:

图 11. d.py Python脚本代码段

攻击的感染链如图12所示:

图 12. 攻击活动感染链

安全建议

研究人员给出了一些关于容器安全的最佳安全实践:

·部署应用防火墙来增强容器安全,并在威胁进入容器环境前发现。

· 最小化第三方软件的使用,使用可验证的软件来确保不会将恶意软件引入容器环境中。

· 最小权限原则。容器镜像文件应该进行签名和认证。到关键组件的网络连接和访问应该被限制。

· 进行应用控制和完整性监控来发现服务器、文件和系统区域的异常修改。

微信扫一扫,分享到朋友圈

Docker服务器被滥用于释放加密货币挖矿机和DDoS僵尸主机

RocketMQ消息丢失场景及解决办法

上一篇

马克龙坚持推进5G,调侃式回应国内5G怀疑论者:要回到油灯时代?

下一篇

你也可能喜欢

Docker服务器被滥用于释放加密货币挖矿机和DDoS僵尸主机

长按储存图像,分享给朋友