章
目
录
近日,网络安全领域研究人员发现了一种专门针对macOS系统的恶意软件——CoffeeLoader。它手段颇为复杂,能绕过端点安全防护措施,在系统中植入Rhadamanthys shellcode(一种恶意的“壳代码”),这对苹果生态系统的安全构成了严重威胁,也表明针对苹果系统的攻击手段正变得越来越复杂、隐蔽。
一、传播途径与感染方式
CoffeeLoader的传播途径主要有两种。一种是通过受感染的软件下载,用户在下载软件时,可能会不小心下载到包含恶意软件的版本;另一种是借助网络钓鱼邮件,这些邮件里带有伪装成合法PDF文档或应用安装程序的恶意附件,一旦用户点击打开,就容易中招。
当用户运行了被CoffeeLoader感染的可执行文件后,它就开始施展“手段”。它会利用一种叫动态链接库劫持(dylib hijacking)的技术,简单来说,就是把恶意代码偷偷加载到正常运行的系统进程里。下面这段代码展示了其加载恶意代码的过程:
// 这段代码定义了一个注入恶意负载的函数inject_payload
// 函数执行后,会在系统中分配内存空间,写入恶意代码,并创建新线程来运行这些恶意代码
void inject_payload(void) {
mach_vm_address_t addr;
mach_vm_allocate(task, &addr, payload_size, VM_FLAGS_ANYWHERE);
mach_vm_write(task, addr, (vm_offset_t)payload, payload_size);
thread_act_t thread;
thread_create_running(task, x86_THREAD_STATE64, (thread_state_t)&state, x86_THREAD_STATE64_COUNT, &thread);
}
二、恶意软件的“潜伏”与破坏行为
成功进入系统后,CoffeeLoader会想尽办法在系统里“扎根”。它会修改系统文件,还会创建隐藏目录来存放自己的组件,这样就能躲过常规的安全检查,一直潜伏在系统中。同时,它还会关闭macOS系统自带的一些安全功能,让系统失去部分防御能力。
而且,CoffeeLoader很狡猾,它会伪装成需要安装权限的正常应用程序,骗取用户授予权限。拿到权限后,它会部署一系列经过特殊处理(混淆)的脚本。这些脚本就算系统重启也不会消失,普通的安全扫描也很难发现它们。
三、危害后果
CoffeeLoader带来的危害可不小。被感染的系统不仅可能会泄露重要数据,还会沦为僵尸网络的一部分。僵尸网络可以利用这些受感染系统的资源,发起分布式攻击,或者进行加密货币挖矿。这会让系统性能大幅下降,甚至可能导致业务无法正常开展,给用户和企业带来不小的损失。
四、发现过程
Zscaler公司的研究人员是在观察到受感染系统和位于东欧的命令与控制服务器之间出现异常网络流量时,察觉到了CoffeeLoader的存在。经过深入分析,发现这种恶意软件采用了多阶段的感染方式,每个阶段都精心设计,目的就是躲避检测,这给安全团队排查和修复问题带来了很大难度。
五、应对建议
面对CoffeeLoader这种新兴威胁,各组织机构需要赶紧行动起来。首先,要及时更新端点防护解决方案,让防护软件保持最新状态,提高对新型威胁的识别和拦截能力;其次,可以实施应用程序白名单制度,只允许白名单里的应用程序运行,这样能有效阻止未知来源的恶意程序;最后,还要定期扫描可疑的启动代理或守护进程,及时发现潜在的安全隐患。