按照美国安全媒体的最新报导,2月份一款新型侧门程序正在针对全球范围内的超级计算机发动网路功击。而这款恶意软件使用的是木马侧门化的OpenSSH软件,可以从安全网路联接中盗取账簿信息。
实际上,在此之前linux 防恶意代码软件,主要针对高性能计算机(HPC)以及学术研究网路上的服务器的恶意软件功击并不多见。
这款新型的恶意软件是由网路安全公司ESET的安全研究人员所发觉的,并以法国神话中行为不端的生物科巴洛斯(Kobalos)为之命名。
关于恶意软件Kobalos
Kobalos恶意软件的代码库很小,但它瞄准的对象却是全球超级计算机。似乎,这是一个此前未被记录的恶意软件,被发觉后,该恶意软件被命名为Kobalos——来自法国神话中的一个小精灵,喜欢恶作剧和误导凡人。
本质上来说linux伊甸园,Kobalos是一款被挂有木马的OpenSSH软件,或被用于从HPC高性能估算集群中盗取SSH证书。安全研究人员称之“小而复杂”且“诡计多端”。虽然功击规模不大,但Kobalos侧门还是渗透了一些主要目标,包括英国政府、欧洲学院、以及欧洲个别小型互联网服务提供商(ISP)的系统。
安全研究专家在安全报告中提及,Kobalos拥有一个体积虽小但功能结构非常复杂的代码库,可以在其他基于Unix的操作系统平台上运行,例如说FreeBSD和Solaris扽等。在对其进行剖析的过程中,研究人员还发觉Kobalos可能存在针对AIX和Windows操作系统的变种版本。
在针对这一新的恶意软件恐吓创建了身分指纹以后,来自网路安全公司ESET的安全研究人员进行了一次互联网范围的大规模扫描,并尝试去找寻遭到恶意软件Kobalos功击的目标用户。研究人员发觉,好多遭到功击的目标系统都是一些学术和研究部门的超级计算机和服务器。除此之外,还有北美的一家未公开的软件安全供应商、亚洲一家小型互联网服务提供商、营销机构和主机提供商也成为了该恶意软件的被害者。
右图显示的是恶意软件Kobalos的全球功击范围统计情况:
目前,网路安全公司ESET的安全研究人员还未能完善该恶意软件的初始功击向量,即难以确定功击者最初是怎样获取到目标设备的管理员访问权并安装恶意软件Kobalos的。不过,一些深受功击的设备运行的是老旧版本、失去技术支持或未安装最新安全补丁的操作系统或软件,因而功击者很有可能借助的是一种已知的或未知的安全漏洞。
泄露SSH账簿信息
虽然研究人员早已花了好几个月的时间去剖析这款恶意软件了,但因为代码中包含了大量通用命令,但是又没有特定的Payload,因而研究人员很难去确定代码中各个部份的准确用途。
恶意软件Kobalos将给功击者提供针对目标设备文件系统的远程访问权限,而且还能否生成命令行终端会话,因而容许功击者在目标设备上执行任意命令。不过,研究人员或多或少还是发觉了一些“蛛丝马迹”。
来组网路安全公司ESET的安全研究人员在报告中讲到:“我们在对受感染的设备进行进一步安全剖析和调查的过程中,我们发觉了一个SSH账簿泄露程序,而这个账簿泄露程序是以一种木马侧门化的OpenSSH顾客端的方式存在的。在目标设备上,/usr/bin/sshfile被替换成了一个经过更改的可执行文件,这个文件会记录目标设备上的用户名、密码和目标主机名,此后会将这种搜集到的信息写入到一个加密文件之中。”
研究人员觉得,因为来自多所学院的中学生和研究人员可能拥有超级计算机集群的SSH访问权限,因而泄露账簿以后,应当也就不难解释为何这款恶意软件才能传播到同一网路或学术领域其他网路上的其他系统了。
体格虽小,但脏腑俱全!
尽管恶意软件Kobalos的容积特别小,32/64位版本的恶意软件样本大小只有24KB,但这丝毫不影响Kobalos成为一款非常复杂的恶意软件。Kobalos使用了自定义的模糊处理技术和反取证技术,这很大程度上降低了研究人员对其进行剖析的难度。其实Kobalos的容积特别小,但功能十分的丰富。
恶意软件Kobalos与众不同的一个有意思的特点在于,它的代码捆绑在了一个单独的函数之中,合法的OpenSSH代码针对该函数只存在一个调用恳求。不过,这款恶意软件中存在一个非线性控制流,即通过递归调用该函数来执行各类子任务,这儿总共支持37种不同的操作,而其中一个命令可以将任何遭到该恶意软件感染的设备弄成其他设备的命令和控制(C2)服务器。
右图显示的是恶意软件Kobalos的控制流:
研究人员通过剖析后发觉,远程功击者有三个选项来跟恶意软件Kobalos进行联接:
1、打开一个TCP端口并等待传入的联接(有时也被称为被动侧门);
2、连接另一个被配置成以命令控制服务器运行的Kobalos实例;
3、等待一个已运行的合法服务的联接,但须要从特定的TCP源端口传入(对正在运行的OpenSSH服务器进行木马侧门化);
恶意软件Kobalos都会对功击者接受和发送的功击流量进行加密。为了实现这一点,顾客端须要使用一个RSA-512秘钥以及密码来进行身分验证。该秘钥生成并加密两个16字节的秘钥,而这种秘钥会使用RC4流密码对通讯数据进行加密。
除此之外,侧门程序就会将网路通讯联接切换至另外一个端口,并以代理服务器的方式来运行以帮助功击者访问其他遭到功击的服务器。
右图显示的是恶意软件Kobalos的控制流构架:
网路安全公司ESET的安全研究人员在接受专访时表示,恶意软件Kobalos源代码的容积其实十分小,但功能却非常的强悍。而Kobalos作为一款针对Linux的恶意软件来说linux操作系统下载,其复杂程度是极少见的,这也表明恶意软件Kobalos的开发人员水平技术要比通常的Linux恶意软件开发者要高得多。
虽然这款恶意软件的复杂程度毋庸置疑,但功击者的主要目的以及恶意软件Kobalos的功击时间依然存在好多疑惑。例如说linux 防恶意代码软件,研究人员发觉的一些字符串居然跟Windows3.11和Windows95有关,而这两个版本的操作系统都早已是25年多甚至更久之前的事情了。
不过目前可以肯定的是,恶意软件Kobalos目前正在盗取包括高性能计算机集群在内的知名目标用户的SSH凭据,并且自2019年年末以来,这个针对超级计算机的功击活动仍然处于活动状态。
除此之外,跟其他早已报到的涉及超级计算机的网路功击活动不同,研究人员并没有发觉恶意软件Kobalos会企图借助超级计算机的估算资源来进行加密货币挖矿或执行个别须要消耗大量估算资源的行为。
后话
目前,网路安全公司ESET早已通知了所有恶意软件Kobalos的被害者,并帮助她们辨识和减轻Kobalos的感染。研究人员还专门发布了一份针对恶意软件Kobalos的完整技术剖析报告,其中还包括可以帮助潜在被害者发辨识恶意软件的入侵恐吓指标(IOC)。