Endpoint Security 新特性
What's new in Endpoint Security
2022年6月6日
一句话判断
macOS Ventura 把 Endpoint Security 的观测范围从内核事件扩展到了用户空间——新增认证、登录/注销、XProtect 事件,加上 eslogger 调试工具,安全产品终于可以彻底告别 OpenBSM。
这场 Session 讲了什么
Apple 安全工程团队的 Daniel 介绍了 macOS Ventura 中 Endpoint Security API 的三项重大更新。Endpoint Security 是 Apple 为第三方安全产品(杀毒、EDR、数据泄露防护)提供的 C API,替代了已废弃的 KAuth、MAC Kernel Framework 和 OpenBSM。到目前为止已支持超过 100 种事件类型。
今年新增了三大类用户空间事件的可见性:认证事件、登录/注销事件、以及 Gatekeeper 的 XProtect 恶意软件检测事件。此外还改进了 muting 功能,并推出了新的调试工具 eslogger。
值得深挖的点
从内核到用户空间的扩展。之前的 Endpoint Security 专注于内核级别的关键事件(进程 fork、文件打开等)。macOS Ventura 首次将观测范围扩展到用户空间的安全相关事件。这意味着安全产品不再需要同时依赖 Endpoint Security 和已废弃的 OpenBSM。
认证事件(Authentication Events)。覆盖用户向操作系统认证的所有场景:本地账户登录、管理员授权操作、Apple Watch 自动解锁等。比 OpenBSM 的审计记录信息更丰富,还提供了 Auto Unlock 的可见性——这是审计系统无法提供的。
登录/注销事件(Login/Logout Events)。覆盖本地控制台登录和远程访问登录,能检测企业环境中的横向移动。信息完整度远超 OpenBSM 审计追踪。
XProtect 事件可见性。Gatekeeper 的 XProtect 负责检测和拦截已知恶意软件。macOS Ventura 起,Endpoint Security 可以观测到恶意软件的检测和拦截事件,安全产品能据此做更深层的分析。
eslogger 调试工具。新增的命令行工具,可以快速查看 Endpoint Security 事件的数据结构,帮助开发者调试和验证事件订阅。
代码片段
// 订阅新的认证事件
es_event_type_t events[] = {
ES_EVENT_TYPE_AUTHENTICATION, // 认证事件
ES_EVENT_TYPE_LOGIN_LOGIN, // 登录事件
ES_EVENT_TYPE_LOGIN_LOGOUT, // 注销事件
ES_EVENT_TYPE_XP_MALWARE_DETECTED, // XProtect 恶意软件检测
ES_EVENT_TYPE_XP_MALWARE_REMEDIATED // XProtect 恶意软件清除
};
// 创建 Endpoint Security 客户端并订阅
es_client_t *client = NULL;
es_new_client_result_t result = es_new_client(
&client,
^(es_client_t *c, const es_message_t *msg) {
// 处理事件回调
switch (msg->event_type) {
case ES_EVENT_TYPE_AUTHENTICATION:
// 处理认证事件
handle_authentication(msg);
break;
case ES_EVENT_TYPE_LOGIN_LOGIN:
// 处理登录事件
handle_login(msg);
break;
default:
break;
}
}
);
最佳实践
- 如果你还在使用 OpenBSM 审计追踪来监控认证和登录事件,是时候迁移到 Endpoint Security 了
- 新事件比 OpenBSM 对应的记录信息更丰富,迁移后分析能力会显著提升
- 使用 eslogger 工具在开发阶段快速验证事件数据结构
- 注意 muting 功能的改进——合理使用 muting 可以减少不必要的事件流量
- 安全产品应该关注 XProtect 事件的联动分析,结合自身检测能力提供更全面的防护
还有什么值得关注
- Endpoint Security 已有超过 100 种事件类型,加上新事件覆盖面非常全面
- 参考 WWDC 2020 的 “Build an Endpoint Security app” 获取基础入门知识
- Apple Watch Auto Unlock 的可见性是一个独特的差异化能力
- 企业环境中横向移动检测有了更好的工具支持