如今木马后门已完全可以运行在电脑的显卡中,这种独特的运行方式增强了它们的隐匿性,同时还大大提高了恶意行为的执行性能。
基于GPU的恶意软件
最近,开发人员发布了两款概念验证性的恶意软件——Jellyfish rootkit和Demon键盘记录器,这两款恶意软件的运行并不是利用电脑的CPU,而是利用图像处理器GPU。这种恶意软件能够利用GPU实现比特币挖矿机,性能更高。
两名匿名开发者对该Rootkit(木马后门)的描述:
“Jellyfish是一个基于Linux的用户态GPU rootkit概念验证项目,它利用了Jynx(CPU)中的LD_PRELOAD技术和Khronos组织开发的OpenCL API(可以利用GPU)。目前代码支持AMD和NVIDIA显卡,并且使用AMD APPSDK的接口是可以兼容Intel的GPU的。”
关于Demon键盘记录器,开发者并没有提供进一步的信息,这个键盘记录器是2013年一篇论文中所描述的恶意代码的POC,这篇论文的题目为“You Can Type, but You Can’t Hide: A Stealthy GPU-based Keylogger.”。其中,论文中陈述道:
“我们提出一种新的方法来实现隐秘的键盘记录器:利用显卡作为键盘记录器的运行环境,并对这种方法的可能性进行了探索。该方法的关键点是通过DMA直接从GPU监听系统的键盘缓冲器,除了页表之外,无需对内核代码或数据结构进行hook或修改。
对该方法原型实现的评估表明,基于GPU的键盘记录器可以有效地记录用户所有的键盘敲击信息,并可以将信息存储在GPU的内存空间中,甚至可以当场分析记录的数据,而运行时间开销可以忽略不计。”
功能特性
该恶意软件都能够在不Hook操作系统内核进程的情况下运行,所以它的运行并不会引起怀疑。
GPU恶意软件的优点如下:
1、网络上还没有分析GPU恶意软件的工具;
2、可以通过DMA(直接内存存取)监听主机CPU内存;
3、GPU可以用于快速的数学计算;
4、关闭之后恶意内存仍然存留于GPU内。
这两款恶意软件的运行需要满足以下条件:
1、安装了OpenCL驱动或ICDS
2、Nvidia或AMD显卡(英特尔支持AMD SDK)
3、改变rootkit/kit.c文件中的第103行,将其中的服务器IP改成你想监视的GPU客户端所在机器的IP
游戏玩家成潜在受害者
专家们强调,尽管Jellyfish rootkit能躲避现实的防御系统,但它要求感染的主机要有一个独立显卡。因为许多电脑并没有独立显卡,这样的条件可能会极大地限制恶意软件的感染量。不过,在某些条件下将能够满足这种要求,例如游戏玩家或视频爱好者的电脑就很可能含有独立显卡。