MacSync窃密恶意软件的新变种利用一个经过代码签名的Swift应用程序,绕过了苹果macOS的Gatekeeper安全防护。
macOS的Gatekeeper在抵御恶意软件和其他可能窃取用户数据的有害软件方面表现相当出色。虽然攻击者想出各种技术来诱骗用户绕过Gatekeeper,但一种新的传播方法大大简化了攻击过程。
Jamf Threat Labs的研究人员于周二报告了MacSync窃密软件的一个新变种,该变种采用了一种不同的方法来攻击macOS。这种方法成功地利用了苹果采用的公证系统。
早期版本的MacSync窃密软件需要使用诸如将项目拖拽到终端窗口或所谓的ClickFix等方法。这些方法通常需要用户执行几个操作才能绕过Gatekeeper,例如拖放脚本文件或粘贴命令。
在新方法下,MacSync窃密软件是作为一个经过代码签名和公证的Swift应用程序的一部分被引入Mac的。用户被诱导从网络浏览器打开一个名为“zk-Call & Messenger”应用程序的安装程序。
以前的版本需要用户右键点击并在上下文菜单中选择“打开”。然而,作为一个经过签名的可执行文件,用户只需双击即可运行。
更简单、更臃肿且具有欺骗性
对安装程序二进制文件的检查显示,它确实经过了代码签名和公证,并且与一个开发者团队ID相关联。
虽然驱动恶意软件的脚本很小,但25.5MB的文件体积相比之下显得相当大。该应用程序被额外的文件(包括PDF文档)填充,仅凭体积就让它看起来更像一个合法的安装程序。
安装程序应用程序本身并不包含恶意软件。相反,在运行之后,它会从一个服务器拉取第二阶段的有效载荷,该有效载荷负责在目标系统上存放并安装恶意软件。
这次攻击本质上仍然是一个经过编码的投放器,研究人员发现了许多MacSync窃密软件的常见特征。主要区别在于,使用经过公证和签名的应用程序使得第一阶段能够绕过Gatekeeper的防护。
Jamf表示,该应用程序的运作方式显示了恶意软件作者如何持续“升级其传播方法”以最大化感染。Jamf承认,这是他们首次见到以基于Swift、经过代码签名和公证的形式出现,并附带第二阶段有效载荷的此类方法。
将恶意软件潜入看起来合法的、确实通过了签名和公证流程的可执行文件中,已成为一种趋势。这种方法如果成功实施,有助于其在关键的早期阶段避免被检测到。
这也是一个存在了一段时间的问题。早在2020年,研究人员就发现恶意代码成功通过了苹果的公证,原因是未能检测到应用程序内部的恶意软件脚本。
这次的不同之处在于,经过公证的应用程序本身并不包含有害代码,而是在通过Gatekeeper检查后从互联网上下载它。这使得在公证过程中检测恶意软件变得更加困难。
Mac用户如何自我保护
作为一个经过公证和签名的应用程序,恶意软件的初始阶段可能看起来比通常情况更安全,因为它不会触发Gatekeeper的干预。Jamf表示已向苹果报告了相关的开发者团队ID,并且相关的证书已被撤销。
然而,Jamf补充说,在报告发布时,代码目录哈希值并未包含在苹果的撤销列表中。
对于普通Mac用户而言,他们应像往常一样继续保持良好的数字安全习惯。这包括注意他们安装的是什么软件以及从哪里安装,例如是从可信的开发者的网站还是从Mac App Store安装。