苹果(Apple)去年发表首颗 ARM 架构处理器 M1,并搭载于 MacBook 和 Mac mini。这颗让英特尔与 AMD 备感压力的 5 奈米新晶片,一开始就被骇客盯上。之前网路早存在一系列长期锁定 Mac 的 Pirrit 广告软体,如今 Mac 安全研究人员 Partric Wardle 发现网路已出现锁定 M1 新处理器的原生版 Pirrit。
与传统 x86 桌机和笔电 CPU 相比,ARM CPU 具备截然不同的指令集架构(Instruction Set Architecture,ISA),意味专为某 ISA 架构设计的软体在没有协助的情况下就无法在另一 ISA 运行。M1 Mac 可藉由名为 Rosetta 的转译层运行 x86 软体,然而 M1 原生应用程式显然运行更快,这点从 Rosetta 转译的 Google Chrome 与 M1 原生版 Chrome 效能比较可清楚看到。
长久以来苹果 Mac 市占率远远比不上 PC,这也让果迷得以免于恶意软体荼毒。10 年前,macOS 作业系统市率只有 6.5%,几乎没有恶意软体会以它为攻击目标。但随着现今市占率几近 20% 之后,自然也成为恶意攻击者的新欢。儘管目前 macOS 恶意软体生态系统的规模仍小,但后续看涨之势值得观察。
如今恶意软体作者直接锁定 M1 的动机并不大,因大多数现有 macOS 恶意软体都可透过 Rosetta 2 于搭载 M1 的 Mac 运行良好,且恶意软体作者通常也不太在意效能,毕竟有不需任何代价的 CPU 週期可用。但直接锁定 M1 新硬体仍然有一些好处,因为恶意程式码愈有效,被感染电脑的所有者就愈不可能注意到被攻击了,更别说还会全心全意将恶意软体清除殆尽。
M1 原生恶意软体证实曾大规模感染 macOS 使用者
Wardle 透过免费线上恶意软体及网址扫描器 VirusTotal 的研究人员帐号查找 M1 原生恶意软体的实例。几经测试,他最终找到名为 GoSearch22 的 Safari 扩充套件。透过此应用程式 Bundle 的 Info.plist 档,确认并非 iOS 应用程式,而是 macOS 应用程式。
该应用程式已于 2020 年 11 月经 Apple developer ID hongsheng_yan 签署,但是我们不知道苹果是否有公证,因苹果已撤销凭证。随着凭证撤销,这版本 GoSearch22 无法再于 macOS 运行,除非凭证作者设法用另一个开发者金钥签署。我们还可推测,这支恶意软体 App 在凭证撤销前确实大规模感染 macOS 实际使用者,否则绝不可能一开始就提交至 VirusTotal。
M1 原生版 Pirrit 能规避侦测,甚至获取 Mac 系统 root 最高权限
Wardle 发现的 M1 原生恶意软体触发 24 个单独恶意软体侦测引擎,有 7 个与 Pirrit 广告软体家族的签章匹配。Pirrit 是存在极久的恶意软体家族,一开始在 Windows 环境横行,最终移植到 macOS。研究人员 Amit Serper 于 2016 年首次发表 macOS 存在的研究,Serper 并于 2017 年发表着名的后续研究。
一旦使用者安装 Pirrit 变种木马,麻烦就会接踵而至(有可能是假冒的影像播放器、PDF 阅读器,或是看起来无害的 Safari 扩充套件),使用者预设搜寻引擎会改成既讨厌又没用的东西,例如使用者网页浏览状况与使用率会被追蹤,或是使用者拜访的网页塞满不需要的广告。
糟糕的还不仅此,Pirrit 还透过极其成熟的恶意软体技巧保持安装状态、避免被检测,并让试图「阻碍」的人日子更难过。Pirrit 会找出并删除想要阻碍它的应用程式和浏览器扩充套件,远离应用程式目录来躲避任何想找到它的尝试,获得受害Mac 系统的 root 最高权限,强力混淆自身程式码让侦测和分析更难进行。
- Apple M1-native malware has already begun to appear