6

对Rudeminer,Blacksquid和Lucifer的比较研究

 3 years ago
source link: http://netsecurity.51cto.com/art/202101/641466.htm
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Lucifer是针对Windows挖矿和DDOS的混合型恶意软件,研究人员在今年6月份发表了一份报告,详细介绍了其攻击活动,最近又有新的证据表明这个攻击是从2018年开始的。

它最初是一个以Windows系统为目标的具有自我传播能力的挖矿软件,现在已经发展成为一个多平台、多架构的恶意软件,目标是Linux和物联网设备。

8da99e07cefcfcaa23294c0e250f96d1.jpg-wh_651x-s_473652698.jpg

从ThreatCloud收集的数据显示,美国、爱尔兰、荷兰、土耳其和印度的25多个组织最近受到打击。攻击来自多个领域,包括制造业、法律、保险以及银行业。

当前物联网设备的主要攻击媒介是通过利用称为CVE-2018-10561的漏洞,该漏洞针对未打补丁的Dasan GPON路由器设备。

该恶意软件具有多种功能:多种类型的DDOS攻击,能够下载和执行文件的完整命令和控制操作、远程命令执行、使用Xmrig挖掘软件进行门罗币挖掘以及通过各种利用技术在Windows系统中自我传播。

攻击活动介绍

攻击源自受到被攻击者破坏的服务器,图1显示感染链是多平台的,并且针对Windows,Linux和物联网设备。然后,受感染的Windows计算机继续将恶意软件传播到网络内部和远程目标。

8909694c326d343268488d220446011d.jpg-wh_600x-s_4190013345.jpg

更新的感染链

恶意软件中显示了一个有趣的字符串序列:

234a3b5d96368065c31c38bc872e8d6e.jpg-wh_600x-s_1948500427.jpg

在最近的Windows,Linux,ARM和MIPS示例中找到的字符串

对这些字符串的进一步研究使我们进行了两个活动,一个被趋势科技发现,他们称之为 BlackSquid ,另一个被腾讯发现,称为 Rudeminer / Spreadminer

还可以通过追踪金融记录(在我们的案例中为所使用的XMR钱包)将这两个活动与Lucifer活动相关联。

841a8f9d7d7cf11b425789892d49507f.jpg

通过使用的XMR钱包追踪到了三个攻击活动

当我们探索使用图3中第一个钱包的Blacksquid样本时,我们发现了两个几乎相同的样本(样本1和样本2)。

这两个样本的互斥模式都相同:

BlacksquidXMRstratum+tcp://[Miner pool address]:[port] 

第一个样本使用图3中的第一个钱包,第二个样本使用第2个钱包。

第二个钱包还用于其他各种Lucifer样本(样本3),从而使我们能够关联两个恶意软件。将Blacksquid攻击系列与Spreadminer关联起来比较研究确实比较复杂,因为腾讯(示例1)中提供的示例使用了没有XMR钱包的自定义XMR挖矿池。

但是,我们能够找到一个几乎相同的样本(样本2),其中使用的是第1个钱包。

Blacksquid活动中使用的XMR钱包提供了2018年底的样本,这表明攻击者开始行动的时间甚至更早。

根据这些发现,我们创建了以下时间表:

22471a8f38bcf21097eea5d2faf49d33.jpg-wh_600x-s_2058466855.jpg

这个活动中变种出现的时间线

在该恶意软件的Linux变体中可以找到另一个有趣的字符串:

1299702c93dd1a2dee31f4edcd9e61ce.jpg

在Linux版本的恶意软件中使用的字符串

我们认为该字符串是对腾讯发布的名为“Rude”恶意软件的回应。

这些发现表明,此活动背后的攻击者已经活跃了一年半多,并且该恶意软件一直在发展和升级其代码库。

从公开的数据来看,我们估计Lucifer攻击给攻击者带来了18.643456520496 XMR,大约是1769美元。

由于旧的XMR钱包现已被封锁,因此无法知道Blacksquid和Spreadminer攻击家族赚了多少钱。 DDOS功能的增加表明攻击者正在寻求扩大恶意软件的赚钱方法。

Windows的自我传播功能是基于过时的和公开可用的漏洞利用以及暴力攻击。随着时间的推移,Windows自身功能只发生了微小的变化,这可能表明攻击者已经成功地使用了这些方法。

新活动的第一批样本于2020年2月被上传到VirusTotal网站,之后的几个月里又上传了一些样本,新的样本仍在检测中。

迄今为止,第一个也是唯一的ARM示例已于5月10日上传到VirusTotal。

44220248360b419d4c568c89eca0b311.jpg-wh_600x-s_1477122684.jpg

VirusTotal中的ARM示例列表

目前尚未确定此样本是否是恶意的,ARM示例仅具有DDOS功能,并且与Linux示例具有不同的行为,这可能是由于物联网设备引起的限制。

C2服务器具有可公开访问的HFS服务器,可让我们目睹攻击的演变:

0b7a674c302231e32a27c9da3acfdec0.jpg-wh_600x-s_2377969794.jpg

最新的二进制样本已上传到C2 HFS公共服务器

正如你所看到的,活动在不断发展并发布新版本。上传的“office.exe”,“sb360..exe”可执行文件是gh0st RAT的变体,这表明攻击者想要扩展受感染计算机中的恶意软件功能。

没有删除Linux,ARM,MIPS版本的调试符号,这使我们能够将所有平台的新版本的代码库关联到2009年以来的中文DDoS程序,该程序称为“Storm Attack Tool VIP 2009”,人们可以在各种开放源代码的中文网站上找到这个程序的下载版本。

3eadd281fa71bb1d5a7cf32fbf22d7b7.jpg-wh_600x-s_3159598239.jpg

Storm攻击工具面板的图像

所有最新版本的DDoS攻击都来自该软件,恶意软件的其余部分被严重修改为其他功能,例如完整的C&C操作,门罗币挖矿,Windows系统中的自我传播以及Linux和物联网设备的端口。

在本文的其余部分,我们将深入研究Linux,ARM和MIPS示例。

Linux x86 / x64

Linux版本与Windows版本的不同之处在于,它不具有自我扩展功能。此外,Linux样本未删除调试信息。

成功利用后,恶意软件使用daemon命令将自身与终端分离,并在后台作为守护程序运行。

恶意软件会检查是否能够设置用于绑定到端口,端口号取决于版本,最新版本使用端口20580。如果恶意软件无法设置套接字或绑定到套接字,则退出。绑定之后,没有调用listen函数来实际开始监听该端口。

套接字的目的不是通讯而是强制执行以下行为:一次只能运行一个进程的恶意软件,因为不能有多个套接字使用同一端口。

该恶意软件为以下信号设置了三个信号处理程序函数:

  • SIGPIPE:对被攻击的管道执行写入操作;
  • SIGTERM:请求终止程序;
  • SIGINT:请求程序正常关闭;

恶意软件执行以下命令:

/sbin/service crond start;chkconfig –level 35 crond on; 

命令的第一部分启动crond服务,第二部分将crond服务设置为在以下运行级别上运行:

  • 多用户模式,仅控制台登录。
  • 多用户模式,具有显示管理器和控制台登录名(X11)。

chkconfig命令失败,因为它在-level 35之前缺少另一个连字符。

这两个命令仅适用于基于CentOS / RHEL的发行版。

恶意软件的下一个目标是增加文件描述符限制,UNIX的定义功能之一是“一切都是文件”,套接字也是如此。

当恶意软件发起DDoS攻击时,它需要打开尽可能多的套接字,以将尽可能多的流量发送到目标。

这可以通过在OS设置中增加文件描述符限制来实现,为了更改文件描述符限制,恶意软件首先检查User ID。当程序以root用户身份运行时,其用户ID为零。如果恶意软件以用户ID为0 (root)运行,则:

执行命令:

ulimit -HSn 65536; 

在文件/etc/sysctl.conf中添加“fs.file-max到6553560”行;

将这些行添加到file /etc/security/limits.conf中:

soft noproc 65535 
hard noproc 65535 
soft nofile 65535 
hard nofile 65535 

如果它没有以用户ID零运行,它将按以下顺序发出两个命令:

ulimit -HSn 4096 
ulimit -HSn 10240 

恶意软件首先以较小的限制然后以更大的限制运行这两个命令,如果增加失败,则较小的限制就是备用选项。

恶意软件的持久性只发生在用户ID为0时:

  • 如果file /etc/rc.local存在,则恶意软件会在该文件中写入或附加以下行:
MALWARE_PATH start 
恶意软件在file/etc/crontab中写入以下行:
*/1 * * * * MALWARE_PATH 

在所有正常的系统服务启动之后,将执行/etc/rc.local脚本。添加到crontab中的这行代码会导致Linux每分钟都在执行这个恶意软件。

恶意软件配置其持久性后,它将解密以下五个字符串:

  • C&C地址:qf2020[.]top;
  • Xmr挖矿程序的参数列表:-o stratum+tcp://pool.supportxmr.com:3333 -u 4AfAd5hsdMWbuNyGbFJVZjcMLeKHvrXnT155DWh8qGkYRPbVGKBT9q1Z5gcFXqmwUuh2Kh6t2sTnHXPysYrGf2m9KqBwz9e -p X;
  • Xmr挖矿程序的参数列表:-o stratum+tcp://gulf.moneroocean.stream:10001 -u 4AfAd5hsdMWbuNyGbFJVZjcMLeKHvrXnT155DWh8qGkYRPbVGKBT9q1Z5gcFXqmwUuh2Kh6t2sTnHXPysYrGf2m9KqBwz9e -p X -a cn/r;
  • Xmr挖矿程序的位置:/ tmp / spreadtop;
  • Xmr挖矿程序的网址:122[.]112[.]179[.]189:50208/X64;

初始化之后,恶意软件通过启动以下五个线程来启动主要逻辑:

  • 挖掘线程:它首先下载挖矿程序并将其保存到/tmp/spread中。这使它能够确保挖掘程序正在运行,并在需要时停止或重新启动挖掘过程。
  • 进程阻止线程;

线程尝试查找和阻止以以下字符串之一开头的进程:

  • Linux-;
  • 25000;
  • Linux2.6;
  • Linux2.7;
  • LinuxTF;
  • 挖矿程序;
  • 获取网络使用线程;
  • 获取CPU使用线程;
  • 将挖掘,CPU使用情况和网络使用情况报告发送到C&C服务器;

8cfb6743b5304088698e33168289fc3b.jpg

报告消息示例

在线程设置好之后,恶意软件开始一个无限循环,并保持与C&C的恒定连接。

C&C命令模式:

2c6c862f26e19c5f57e82b6b2afd7d69.jpg-wh_600x-s_3532859711.jpg

Linux ARM / MIPS

ARM / MIPS版本是Linux的较简单版本,它们仅包含DDoS功能。

初始化与Linux版本中的初始化几乎相同,他们使用守护程序进行分离,并使用套接字绑定方法来确保只有一个正在运行的进程。

该恶意软件仅为SIGPIPE设置信号处理程序,如果它以root身份运行,则它将文件描述符限制增加到20480,并将其路径写入/etc/rc.local文件以实现持久性。

如果不是以超级用户身份运行,它将文件描述符限制增加到4096。然后,恶意软件解密C&C地址:tyz2020[.]top。初始化后,恶意软件通过启动以下一个线程来启动主要逻辑:看门狗通信线程;

首先检查以下设备是否存在:/dev/watchdog或/dev/misc/watchdog.

如果其中一个存在,则使用ioctl WDIOC_SETTIMEOUT将看门狗超时时间增加到15秒。然后线程开始一个无限循环,每10秒将ioctl WDIOC_KEEPALIVE发送给Watchdog。

看门狗的作用是确保系统稳定。

在系统问题的情况下,用户空间Watchdog停止写入Watchdog设备,而内核Watchdog重新启动设备。

通过使用此线程,恶意软件可确保监视设备始终将数据写入监视程序设备。这样可以防止设备重启。

如前所述,在建立线程之后,恶意软件会启动无限循环并保持与C&C的恒定连接。

C&C命令模式:

  • 模式4对目标发起DDOS攻击;
  • 模式5停止当前的DDOS攻击或重新启用以后的攻击;

总结

正如我们在本文中所介绍的那样,该活动正在不断发展以跨平台,并增加了获取利润和传播自身的新方法。即使攻击者使用已知的攻击来感染计算机和自我传播,也并非总是对所有系统进行更新。当组织的密码策略薄弱时,暴力破解可能会有效。

在撰写本文时,这些是攻击者在所有体系结构和平台上使用的功能:

3202d5dddec89b06d4247e222452505c.jpg-wh_600x-s_959785852.jpg

我们相信该攻击活动将继续发展,包括修改Windows中当前的自扩展方法和功能,并将其添加到Linux,ARM和MIPS版本中。

本文翻译自:https://research.checkpoint.com/2020/rudeminer-blacksquid-and-lucifer-walk-into-a-bar/


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK