【CNMO 科技消息】macOS 的安全防线正遭遇一次信任危机。近日,安全研究人员 Talal Haj Bakry 与 Tommy Mysk 披露了一项 macOS 安全漏洞:攻击者可以在无需获取系统管理员权限的情况下,将用户已下载并运行过的应用程序悄然替换为恶意版本,而苹果的 Gatekeeper 安全机制全程不会发出任何警告。苹果在审查后认定该行为不构成安全漏洞,不予修复。

macOS
Gatekeeper 是 macOS 的核心安全机制,其职责是在用户首次打开从互联网下载的应用程序时,验证应用的签名与公证状态。一旦验证通过,macOS 便会将该应用标记为 " 可信 ",并将这一信任状态缓存下来。
研究人员发现,这一设计存在一个可被利用的漏洞:当应用首次通过验证后,macOS 不会再对其进行二次完整性检查。攻击者只需获得当前用户级别的代码执行权限(例如通过恶意脚本、感染的 CLI 工具、npm 或 Homebrew 的供应链攻击等),即可执行以下操作:
1. 使用 `tar` 命令将已信任的应用打包归档
2. 删除原始应用
3. 在相同位置解压一个恶意版本
由于 macOS 将恢复后的应用视为 " 本地构建 " 的应用,Gatekeeper 不会再进行任何验证或重新授权。整个过程对用户完全透明。
这一漏洞影响所有从 Mac App Store 以外渠道下载的应用程序——包括 Brave、Slack、Signal、Visual Studio Code、Cursor、Proton Mail、Mullvad Browser、Xcode 等。Mac App Store 应用不受影响,因为它们归 root 用户所有,普通用户进程无法覆盖。
一旦恶意 " 双胞胎 " 应用就位,它可以在用户信任的合法应用名称和图标下,弹出虚假的权限请求。例如,一个被替换的 "Signal" 应用可能会请求访问钥匙串或桌面文件夹,而 macOS 会显示 "Signal" 想要访问您的数据——用户很难察觉到异常。
需要注意的是,替换后的应用不会继承原应用的代码签名身份、权限或已授予的 TCC(透明、同意与控制)权限。当它尝试访问受保护资源时,macOS 仍会弹出授权提示——但提示显示的是被替换应用原本的名称和图标。

macOS 27
研究人员于 6 月向苹果报告了这一问题,苹果于 7 月 14 日关闭了该案件。苹果的结论是:该行为不构成安全漏洞,因为攻击需要恶意软件已在当前用户下运行,并未绕过 Gatekeeper 或 TCC,且仍需要用户批准权限请求。苹果还指出,Gatekeeper 的设计目的是在应用首次启动前进行验证,而非持续监控用户自有且可修改的文件。苹果未回应媒体的置评请求。
Mysk 团队对此持不同意见。他们认为,macOS 应在应用包内容发生变化后重新验证其代码签名,而权限提示应显示发起请求的可执行文件的代码签名身份或 Team ID,而非仅显示应用名称和图标。
对于 Mac 用户而言,这一发现意味着:Gatekeeper 仅在应用首次运行时进行验证,此后信任决策被缓存,存在被滥用的风险。研究人员建议用户,在批准敏感文件或钥匙串访问权限时保持警惕——即使提示来自看似熟悉的应用。从 Mac App Store 安装的应用仍受保护,而网页下载的应用则面临 " 一条 tar 命令即可被替换 " 的风险。
版权所有,未经许可不得转载


登录后才可以发布评论哦
打开小程序可以发布评论哦