《电子技术应用》
您所在的位置:首页 > 通信与网络 > 业界动态 > Kobalos:专门攻击超级计算机的Linux恶意软件

Kobalos:专门攻击超级计算机的Linux恶意软件

2021-02-04
来源:安全牛

  近日,ESET研究人员发现了一个专门攻击超级计算机的恶意软件——Kobalos,该恶意软件2019年以来一直在攻击全球各地的超级计算机——高性能计算机(HPC)集群,目标包括亚洲的大型互联网ISP、欧洲大学高性能计算网络、北美终端安全厂商、私有服务器和政府机构(下图)。

  2.png

  Kobalos已知攻击目标的行业和地域分布

  研究者指出,Kobalos是一个很“小巧”但很复杂的程序,可以在其他UNIX平台(FreeBSD、Solaris)上执行。在分析过程中发现AIX和Windows操作系统也可能存在Kobalos的变体。

  过去的一年中发生了多起涉及HPC集群的安全事件,其中最受媒体关注的莫过于去年5月安全牛报道过的席卷全球的超级计算机感染门罗币挖矿软件事件,根据欧洲网格基础设施(EGI)CSIRT公布的报告,包括波兰、加拿大、德国、西班牙和中国的多个超算重心都受到了影响。同样在5月,英国ARCHER超级计算机被入侵窃取SSH凭证。

  与已经报告的超级计算机网络的攻击事件不同,被感染系统的管理员没有发现Kobalos有任何尝试挖掘加密货币或运行计算量大的任务的尝试。

  事实上,最新曝光的Kobalos恶意软件比去年的其他重大超算中心安全事件发生得更早(始于2019年)。

  “人小鬼大”

  ESET在周二发布的一份分析报告中表示,研究人员之所以用Kobalos命名该恶意软件,是因为“其代码量虽小但高度复杂,包含很多高级技巧”。Kobalos的名字源于希腊神话。Kobalos是狄俄尼索斯(Dionysus)的同伴,狄俄尼索斯是一堆调皮的精灵,以欺骗和恫吓凡人而闻名。

  “我们之所以称这种恶意软件为Kobalos,是因为它的代码量很小且有许多技巧。”调查该恶意软件的Marc-EtienneLéveillé解释说:“必须承认,这种复杂程度在Linux恶意软件中很少见。”

  Kobalos的32/64位样本的大小只有24KB,但是采用了高度定制化的混淆和检测逃避技术,此外在小小“身躯”中整合了很多其他功能,例如,由于C2服务器IP地址和端口被硬编码到可执行文件中,恶意软件操作员只需要发送一条命令,就可以把任何感染Kobalos的服务器变为C2服务器。

  此外,Kobalos还可以用作连接其他受感染服务器的代理,这意味着攻击者可以利用多台感染Kobalos的机器来达到目的。

  如上所述攻击者,可通过三种方式与后门和被感染机器互动(直接、通过代理和C2服务器):

3.png

  Kobalos还有一个“出彩”的功能是:根据分析,Kobalos代码紧密绑定在一个函数中,该函数采用非线性控制流程“递归调用自身以执行多达37个子任务”,其中一个子任务是将所有被感染机器变成C2服务器。

  这种紧凑的体系结构与其他恶意软件特性相结合,使其难以被分析和发现。

  报告还指出,所有字符串均已加密,“因此,与静态查看样本相比,查找恶意代码更加困难”。操作后门需要一个私有的512位RSA密钥和一个32字节长的密码。一旦两个都通过验证,Kobalos将使用RSA-512公共密钥生成并加密两个16字节密钥,并将其发送给攻击者。这两个密钥用于RC4加密后续的入站和出站流量。

  最后,ESET研究人员对这种小而复杂的恶意软件进行了反向工程,发现它可移植到许多操作系统(包括Linux、BSD、Solaris,甚至可能是AIX和Windows)中。

  种种迹象表明,Kobalos背后的攻击者“知识渊博,显然是个高级攻击者”。

  窃取SSH凭据

  Kobalos后门程序包含广泛的指令,且没有特定的有效载荷,因此无法确定攻击者的真实意图。

  但是,在大多数感染Kobalos的系统中,用于安全通信(SSH)的客户端被窃取了凭据。

  研究者在调查中发现了不同的账户窃取程序变体,包括Linux和FreeBSD实例。所有变体的主要功能包括从受感染的主机窃取用于建立SSH连接的主机名、端口、用户名和密码,这些主机名、端口、用户名和密码均保存在加密文件中。

  “找到的所有样本都使用相同的简单密码来存储文件的内容。它只会在要保存的每个字节数据中加上123。对于FreeBSD版本,将使用相同的格式和密码。但是,在实现上还存在一些细微的差异,例如使用单字节XOR加密恶意软件中的文件路径。”研究人员解释说。

  根据变体的不同,保存被盗的SSH凭据的文件位置也会有所不同,但是所有示例都会在/var/run下创建一个看起来合法的“。pid”扩展名的文件。

  较新版本的凭证窃取器包含加密的配置,并添加了通过UDP将凭证泄漏到配置中指定的远程主机的功能。

  “使用受感染计算机的SSH客户端的任何人的凭据都会被窃取。然后,攻击者可以使用这些凭据在新发现的服务器上安装Kobalos。”Léveillé补充说。

  这也可以解释为什么许多学术网络在这次攻击中遭到破坏,因为超算系统的SSH客户端往往被来自多所大学的学生或研究人员使用。

  威胁缓解

  连接到SSH服务器时启用双因素身份验证可以缓解威胁,因为使用被盗凭据似乎是Kobalos传播到不同系统的主要方法。

  对Kobalos的检测并不困难,可以通过在归属于SSH服务器的端口上查找非SSH流量来检测Kobalos。

 


本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306116;邮箱:aet@chinaaet.com。