Mumblehard——五年统治的终结

作者:James Darvell

Linux 享有作为个人和企业最安全平台之一的当之无愧的声誉。这很大程度上归功于安全集成到系统的方式,但是过于自满存在很大的风险。最近发生的事件提醒我们,没有牢不可破的系统。

在这种情况下,罪魁祸首是一个名为 Mumblehard 的木马,它一直在猛烈攻击 Linux 和 BSD Web 服务器。Mumblehard 木马有一个特定目的:将 Web 服务器变成僵尸中继,用于发送垃圾邮件,通常是针对药品——是的,伟哥垃圾邮件。

这从几个方面损害了网站所有者的利益

  1. 他们必须支付垃圾邮件消耗的带宽费用。
  2. 他们面临域名和 IP 被垃圾邮件过滤器列入黑名单的风险,这可能会阻止他们的合法电子邮件被送达。

Mumblehard 由安全公司 ESET 发现,该公司已在一份白皮书中公布了其调查结果(可在 http://www.welivesecurity.com/wp-content/uploads/2015/04/mumblehard.pdf 获取)。ESET 最初是在调查一个因垃圾邮件活动而被列入黑名单的服务器案例时发现该感染的。

Mumblehard 最令人震惊的方面是,它至少已经不被检测地运行了五年。ESET 得知,VirusTotal 在线服务在 2009 年 3 月发现了该恶意软件的片段。

僵尸网络并不新鲜,但它们通常会被更快地检测到。感染率和受感染计算机被利用的方式等因素使它们易于检测。Mumblehard 的开发者更加谨慎,缓慢地感染目标,并且仅使用每个主机可用带宽的一小部分。

Mumblehard 具有不寻常的结构。它用 Perl 代码编写,但随后被打包成 ELF 二进制可执行文件。分析表明,这些 ELF 库是用汇编语言编写的(而不是编译的)。这种奇怪的隐藏 Mumblehard 的方法是最初引起 ESET 研究人员兴趣并引导他们详细调查它的因素。

Mumblehard 有两个组件。首先是一个后门,它通过 cron 任务运行。此组件联系“命令与控制”服务器并下载要执行的文件——它每 15 分钟轮询服务器列表。它向列表上的所有服务器报告作业的结果。

命令巧妙地隐藏在 HTTP 标头中,伪装成无辜的 PHP 会话 cookie。实际上,“会话 ID”是命令文件的十六进制编码 URL(白皮书涵盖了完整详细信息)。

Mumblehard 的下一个组件是一个邮件垃圾邮件守护进程,也是用 Perl 编写的。它还从“命令与控制”服务器请求作业,并直接发送电子邮件或将自己设置为电子邮件代理。

目前,攻击的来源尚未得到绝对证实。但是,有几个可疑的连接指向 Yellsoft,这是一家俄罗斯公司,专门从事名为 DirectMailer 的批量电子邮件软件。首先,木马组件存在于 Yellsoft 的 DirectMailer 程序的盗版版本中。其次,用于控制僵尸网络的“命令与控制”服务器与 Yellsoft 的官方网站托管在同一 IP 区块中。

更令人怀疑的是,Yellsoft 在自己的网站上链接到盗版版本。说这对于一家商业软件公司来说是不寻常的行为,这还是一种轻描淡写!

在白皮书发布后,Yellsoft 的网站已下线。

破解版的 DirectMailer 不是唯一的感染途径。WordPress 和 Joomla 漏洞也被用来感染 Web 服务器。

可以通过检查意外的 cron 任务来检测感染。在所有情况下,这些任务都设置为每 15 分钟运行一次。

Mumblehard 可执行文件位于所有受感染服务器上的 /tmp 或 /var/tmp 目录中,并通过 cron 执行。

目前的建议是删除未经授权的 cron 作业,从 /tmp(或 /var/tmp)中清除受感染的文件,并清除任何受感染的文件(例如破解版的 DirectMailer)。

由于感染可以通过 WordPress 和 Joomla 漏洞传播,因此还建议将这些软件包更新到最新版本,以防止再次感染。

加载 Disqus 评论