能同时攻击Windows、Mac、Linux三大操作系统的恶意软件出现了。

虽然 全平台通杀 病毒并不常见,但是安全公司Intezer的研究人员发现,有家教育公司在上个月中了招。

更可怕的是,他们通过分析域名和病毒库发现,这个恶意软件已经存在半年之久,只是直到最近才被检测到。

他们把这个恶意软件命名为SysJoker。

SysJoker核心部分是后缀名为 .ts 的TypeScript文件,一旦感染就能被远程控制,方便黑客进一步后续攻击,比如植入勒索病毒。

SysJoker用C++编写,每个变体都是为目标操作系统量身定制,之前在57个不同反病毒检测引擎上都未被检测到。

那么SysJoker到底是如何通杀三大系统的?

SysJoker的感染步骤

SysJoker在三种操作系统中的行为类似,下面将以Windows为例展示SysJoker的行为。

首先,SysJoker会伪装成系统更新。

一旦用户将其误认为更新文件开始运行,它就会随机睡眠90到120秒,然后在C:\ProgramData\SystemData\目录下复制自己,并改名为igfxCUIService.exe,伪装成英特尔图形通用用户界面服务。

接下来,它使用Live off the Land(LOtL)命令收集有关机器的信息,包括MAC地址、用户名、物理媒体序列号和IP地址等。

SysJoker使用不同的临时文本文件来记录命令的结果。这些文本文件会立即删除,存储在JSON对象中,然后编码并写入名为microsoft_windows.dll的文件。

此外,SysJoker收集之后软件向注册表添加键值HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run保证其持久存在。

在上述每个步骤之间,恶意软件都会随机睡眠,防止被检测到。

接下来,SysJoker将开始建立远程控制(C2)通信。

方式是通过下载从Google Drive托管的文本文件,来生成远程控制。

Google Drive链接指向一个名为 domain.txt 的文本文件,这是以编码形式保存的远程控制文件。

在Windows系统上,一旦感染完成,SysJoker就可以远程运行包括 exe 、 cmd 、 remove_reg 在内的可执行文件。

而且研究人员在分析期间发现,以上服务器地址更改了三次,表明攻击者处于活动状态,并监控了受感染的机器。

如何查杀SysJoker

尽管SysJoker现在被杀毒软件检测出的概率很低,但发现它的Intezer公司还是提供了一些检测方法。

用户可以使用内存扫描工具检测内存中的SysJoker有效负载,或者使用检测内容在EDR或SIEM中搜索。具体操作方法可以参见Intezer网站。

已经感染的用户也不要害怕,Intezer也提供了手动杀死SysJoker的方法。

用户可以杀死与SysJoker相关的进程,删除相关的注册表键值和与SysJoker相关的所有文件。

Linux和Mac的感染路径不同,用户可以在Intezer查询到这些参数,分析自己的电脑是否被感染。