跳转到主要内容
持久化只回答一个问题:什么把自己装成了能跨重启存活? 它几乎完全建立在 macOS 13+ Background Task Management 的 btm_add 事件上,并由安装进程的代码签名信任判定驱动严重度。 发现在设备端产生,并出现在 恶意软件、框架 及相关安全视图中。下文描述持久化信号本身。

为何 btm_add 是高信号原语

在 Linux 上,持久化分散在 cron、systemd、rc、shell profile、LD_PRELOAD 等处。在 macOS 13+(Ventura 及以后),Apple 基本把它们收拢到 Background Task Management (BTM)。采集器 订阅 NOTIFY_BTM_LAUNCH_ITEM_ADD:任何注册 launch agent、launch daemon 或 login item 的动作都会落入 endpoint_events 的一行 btm_add。 两点结构优势:
  • 在注册时触发,而不是在运行时。 在下次重启或二次执行之前就能看见落脚点。
  • 永不被体积过滤丢弃。 持久化事件完全绕过体积过滤。
每一行还携带身份列:不只是「加了一个 launch daemon」,而是 哪个进程加的、由谁签名、信任如何。

btm_add 载荷

除始终存在的代码签名与应用归属列外,还有:
launch_daemon 最危险:无需用户会话即以 root 在开机时运行。不信任二进制注册的 daemon 应优先打开。

严重度 = 安装者的信任判定

合法软件会反复重注册同一 plist;近乎相同的发现会折叠为带 N× 标记的一行,展开可见每次时间戳。高严重度发现不会藏进折叠组。

发现详情六段


直接查询

btm_add 需要 macOS 13.0+。更旧主机上该订阅会优雅降级,本页可能无行。

与其他页面的关系

最后修改于 2026年10月8日