.pkg,在单台 Mac 上安装 macOS 采集器,无需任何 MDM。它适用于单台机器、试点,或尚未拥有受管设备主机群的小型团队。安装包会将 Hilt EDR(EDRApp.app)放入 /Applications,并注册一个小型转发器 LaunchDaemon;随后用户执行一次约 30 秒的系统扩展审批,并为其授予 Full Disk Access。
这在正常、加固的 Mac 上即可运行——System Integrity Protection (SIP) 保持启用,无需 csrutil disable、无需开发者模式,授权过程也无需使用终端。之所以能做到这一点,是因为该应用及其内嵌扩展使用 Developer ID Application 证书签名,携带内嵌的预置描述文件以授权受限的 Endpoint Security 权限(entitlement),使用 Hardened Runtime,并由 Apple 公证和装订(staple)。完整的权限与签名说明请参阅架构。
macOS 采集器目前处于早期访问阶段。本文所述的经过公证、SIP 保持开启的
.pkg 安装方式是目标发布模型。若需通过 Jamf、Kandji 或 Intune 进行零点击的主机群部署,请参阅使用 MDM 部署。要求
主机资源
安装包会在主机上安装一小组定义明确的项目:
应用包内交付的两个扩展为:
没有内核扩展 (kext)。两个组件均为构建在 Apple 现代框架之上的纯用户态系统扩展。
安装
独立安装即一次双击,随后进行两项一次性授权。逐步操作的详细图文教程(含确切的“系统设置”面板和截图)请参阅安装流程;下方摘要与该流程一致。1
运行安装程序
双击
Hilt-EDR-<version>.pkg 并按提示操作。在要求时使用管理员密码进行身份验证。安装程序会将 EDRApp.app 复制到 /Applications 并注册转发器 LaunchDaemon。2
首次打开应用
从
/Applications(或 Spotlight)启动 Hilt EDR。首次启动时它会请求激活其系统扩展。在提示时点击 Open System Settings(或 Allow)。3
审批系统扩展
前往 System Settings → General → Login Items & Extensions → Endpoint Security Extensions,启用 ESensor 并进行身份验证。这就是系统扩展审批;整个过程中 SIP 始终保持启用。
4
授予 Full Disk Access
前往 System Settings → Privacy & Security → Full Disk Access,启用在第 3 步后自动出现的 ESensor 条目。它列为 ESensor / “Hilt EDR Sensor”,而非 “EDRApp”。
Full Disk Access 是必需的。 任何第三方 Endpoint Security 客户端都需要它,CrowdStrike、SentinelOne 及同类产品也是如此。这两项授权(系统扩展审批和 Full Disk Access)是 Apple 的安全要求,在没有 MDM 的情况下无法被抑制——用户必须至少亲自完成一次身份验证。如果你需要完全静默、零点击的安装,请改用使用 MDM 部署。
配置
转发器从/Library/Application Support/Hilt/EDR/ 读取其配置。采集器将事件发送到单个已配置的接入端点,并以人类可读的 Mac 名称(device_name)标识主机。相关设置:
ESensor 以 JSON 行的形式发出事件,转发器
LaunchDaemon 通过出站 HTTPS 将其发送到 edr-collector。采集器将事件路由到 MSK Kafka 主题(dag.endpoint.exec、dag.endpoint.file、dag.endpoint.net),扩充服务以 ENRICH_PLATFORM=macos 处理它们,最终它们落入 ClickHouse 的 endpoint_events 表。完整管道请参阅数据流。
验证
审批扩展后,确认 ESensor 已激活并启用:[activated enabled] 状态的 ESensor 扩展:
LaunchDaemon 已加载并正在运行:
如果
systemextensionsctl list 将 ESensor 显示为 [activated waiting for user],则该扩展尚未被审批——请返回 System Settings → General → Login Items & Extensions → Endpoint Security Extensions 并启用 ESensor。如果传感器已激活但没有事件到达仪表盘,请确认已向 ESensor 授予 Full Disk Access,并且允许到你的接入端点的出站 HTTPS (443)。此安装不会做的事
- 不更改 SIP。 它绝不运行
csrutil disable,也绝不启用开发者模式;SIP 保持启用。 - 无内核扩展。 两个组件均为用户态系统扩展;不会有任何东西加载到内核中。
- 无入站监听器,也不回连(phone-home)。 唯一的网络出口是到你已配置的接入端点的出站 HTTPS。
- 不采集文件内容。 ESensor 捕获事件元数据(路径、签名身份、归因),而非文件内容。
- 无任意阻断或隔离响应。 遥测绝大多数为 NOTIFY;一小组 AUTH 自保护会在内核中拒绝对代理的未授权篡改(参阅事件覆盖)。由控制台驱动的设备端隔离响应在 macOS 上尚不可用(早期访问)。
- 无自动更新。 升级通过重新运行更新版的
.pkg来完成;macOS 上尚不支持原地自动更新。
升级
由于应用和扩展使用相同的 Team ID(MVMB6LCP2A)签名,升级无需重新审批——现有的系统扩展审批和 Full Disk Access 授权会延续,launchd 会自动重新启动新的扩展构建。
1
退出应用
如果 Hilt EDR 正在运行,请退出它。
2
运行新的安装包
双击更新版的
Hilt-EDR-<version>.pkg 并进行身份验证。它会原地替换 /Applications 中的 EDRApp.app。3
确认新构建
运行
systemextensionsctl list 并确认 ESensor 以 [activated enabled] 状态显示新版本。macOS 大版本升级。 Full Disk Access 授权偶尔会在 macOS 大版本升级时被重置(一种已知的 TCC 行为)。在独立 Mac 上,此类升级后你可能需要为 ESensor 重新切换一次 Full Disk Access。受 MDM 管理的主机会通过 PPPC 自动重新应用此项——参阅使用 MDM 部署。
卸载
停用系统扩展并移除已安装的组件:系统扩展是通过系统扩展生命周期停用的,而非仅靠删除文件。请使用应用的卸载操作(或其停用请求),以便 macOS 从
/Library/SystemExtensions/ 中移除该扩展;仅移除应用包可能会遗留一个已停用但仍暂存的扩展。