安全研究人员 Mickey Jin 提供了一份详细的技术和概念验证 (PoC) 漏洞利用代码,揭示了 macOS 中的一个关键 TCC(透明度、同意和控制)绕过漏洞 CVE-2024-54527。这个影响 MediaLibraryService XPC 服务的漏洞展示了攻击者如何操纵权限绕过 TCC 保护,从而带来重大安全风险。
该漏洞存在于 XPC 服务 /System/Library/Frameworks/MediaLibrary.framework/Versions/A/XPCServices/com.apple.MediaLibraryService.xpc。据 Jin 称,该服务拥有强大的 TCC 权限,包括:
- com.apple.private.tcc.manager: 通过 tccd 守护进程授予对 TCC 数据库 (TCC.db) 的直接修改访问权限。
- com.apple.private.tcc.allow: 允许访问 kTCCServicePhotos,方便进行媒体相关操作。
“攻击者可将恶意插件放到 ILUserLibraryPluginLocationPath 中,并让有权使用的 XPC 服务加载该插件。因此,攻击者可以利用强大的权限 “com.apple.private.tcc.manager ”完全绕过 TCC 保护,”Jin 解释说。
一个插件路径 ~/Library/Application Support/iLifeMediaBrowser/Plug-Ins 既不受 SIP(系统完整性保护)保护,也不受 TCC 保护,因此在没有 root 访问权限的情况下很容易被修改,这加剧了问题的严重性。
Jin 介绍了漏洞利用过程,包括向未受保护的插件路径注入恶意插件。然后,易受攻击的 XPC 服务可以加载未签名的插件,利用其权限完全绕过 macOS TCC 保护。
执行漏洞利用:
- 编译有效载荷并将其放置在适当的路径中。
- 使用从旧版 macOS 系统复制的 XPC 服务漏洞版本,以避开 macOS Ventura 引入的启动限制等新安全功能。
- 编译并运行带有临时有效代码签名的漏洞利用程序。
该漏洞利用代码可在 Jin 的 GitHub 存储库中公开获取。
苹果在 macOS Ventura 中引入了 Launch Constraints 等缓解措施来应对这类漏洞。不过,Jin 强调旧版 macOS 二进制文件仍然存在漏洞,允许攻击者规避较新的安全措施。
Jin 建议用户将 macOS 系统更新到最新版本,并敦促苹果加强对旧版二进制文件的保护。
发表评论
您还未登录,请先登录。
登录