保护您的 MDM 管理平面
安全简报
为什么这对 Jamf 生态系统很重要
每个 MDM 平台(包括 Jamf Pro)都具有发出远程擦除命令的能力。这是一项核心的必要功能。最近针对 MDM 平台的攻击表明,管理平面本身是一个高价值目标,MDM 平台必须被视为第 1 层关键基础设施。
关键风险因素包括:
持久特权访问:具有永久、广泛特权的管理员帐户
凭证泄露:通过网络钓鱼或 AiTM 技术获得的管理员凭证
缺乏多管理员审批:单个被破坏的帐户可能会大规模发出破坏性命令
监控不足:批量擦除命令未被实时标记或阻止
问题是:Jamf 生态系统如何对这种攻击模式提供检查?
Jamf 安全控制
SSO 联合到身份提供者 (IdP)
风险:攻击者破坏管理员凭证并直接访问 MDM 控制台。标准 MFA 可以通过 AiTM 技术绕过。
Jamf 如何解决这个问题:
Jamf Account SSO (OIDC):Jamf 现在支持通过使用 OpenID Connect 的 Jamf Account 进行集中式 SSO。您在 Jamf Account 中配置一次 IdP(Entra ID、Okta 等),它会流向 Jamf Pro、Jamf Protect 和 Jamf Security Cloud。这会合并身份验证表面。
基于 IdP 组的权限映射:Jamf Pro 支持将 IdP 组映射到权限集。当管理员通过 SSO 进行身份验证时,他们在 IdP 中的组成员身份决定了他们在 Jamf Pro 中可以执行的操作。这意味着权限级别是在 IdP 中集中管理的——而不是分散为本地 Jamf Pro 帐户。
IdP 层的条件访问:由于 Jamf 管理员身份验证流经 IdP,所有 IdP 级别的控制都适用:设备合规性检查、抗钓鱼 MFA(FIDO2/Passkeys)、地理限制、不可能的出行检测和会话风险评估——都在管理员到达 Jamf Pro 控制台之前。
应急帐户策略:Jamf 建议维护至少一个本地、非 SSO 管理员帐户,仅通过故障转移 URL 访问。这在 IdP 连接失败时提供紧急访问,同时将主要攻击表面保持在强大的 IdP 控制之后。
禁用 Jamf ID 直接登录:配置 OIDC SSO 后,组织可以禁用 Jamf ID 直接登录,强制所有身份验证都通过 IdP 及其相关的安全策略。
基础设施即代码 (IaC) 控制
风险:具有持久特权的单个管理员帐户可以通过 Web 控制台进行破坏性更改(包括大规模擦除),无需审查、审批工作流和回滚路径。
Jamf 如何通过 IaC 解决这个问题:
Jamf 的 Terraform 提供程序:现在有两个 Terraform 提供程序——社区
terraform-provider-jamfpro(Deployment Theory / Lloyds Banking Group)和 Jamf 自有的terraform-provider-jamfplatformfor Platform API。它们共同覆盖策略、配置文件、组、应用、蓝图、合规基准等。GitOps 工作流 = 强制对等审查:在 IaC 模型中,配置更改在代码中定义,提交到 Git 分支,并在应用前进行拉取请求审查和审批。任何人都不能在没有另一组眼睛审查的情况下推送破坏性更改。
消除 ClickOps 持久访问:IaC 方法让您可以大幅减少需要直接控制台访问的人数。如果更改是通过 Terraform + CI/CD 进行的,具有写入权限的交互式管理员帐户对于大多数操作变得不必要。您可以将控制台访问视为例外,而不是常规。
状态管理和漂移检测:Terraform 维护表示预期配置的状态文件。如果有人通过控制台进行未授权更改(或攻击者进行),漂移检测将标记它。这提供了额外的可见性层。
回滚功能:因为整个配置是在 Git 中进行版本控制的,回滚到已知的良好状态只需要
git revert+terraform apply。IaC 默认提供有文档记录的恢复路径。Terraform 的 API 角色和客户端:Jamf Pro 的 API 角色和客户端功能让您可以为 Terraform 创建范围狭窄的服务帐户。Terraform 服务帐户可以有权限管理策略和配置文件,但明确无权限发出远程擦除命令。这在 API 层实施最小权限原则。
Jamf Pro 权限集和 RBAC
直接相关控制:
细粒度权限集:Jamf Pro 允许自定义权限集,您可以明确授予或拒绝特定功能。"擦除计算机"和"擦除移动设备"命令是单独的、可切换的权限。您可以创建可以管理策略和配置文件但无法发出擦除命令的管理员角色。
API 角色和客户端:与用户帐户分开,这些提供了具有自定义权限集的编程访问。您可以为自动化工作流创建 API 客户端,这些客户端永远不具有破坏性功能。
审计日志:每个 MDM 命令(包括擦除)都记录有发出用户/帐户、时间戳和设备目标。这些日志可以导出并通过管道传输到 SIEM(Splunk 等)以进行实时警报。
按设备擦除工作流:Jamf Pro 的擦除命令是从各个设备记录的"管理"选项卡按设备发出的。标准控制台 UI 中没有"选择全部并擦除"批量操作,这对大规模破坏性操作造成了自然摩擦。
总结
问题:MDM 平台是第 1 层关键基础设施。攻击者不需要恶意软件——他们只需要管理员凭证和 MDM 自己的工具。管理平面是攻击表面。
为什么 ClickOps 很危险:当管理员通过单击 Web 控制台进行更改时,没有对等审查、审批工作流、审计跟踪(仅限于基本日志)和回滚路径。被破坏的帐户具有即时的、不受检查的权力。
Jamf 防御堆栈:
身份层:通过 Jamf Account OIDC 的 SSO 联合将所有身份验证推送到 IdP,启用抗网络钓鱼 MFA、条件访问和设备合规性——在任何人到达控制台之前。
授权层:Jamf Pro 的细粒度权限集让您可以将配置管理与破坏性操作分开。API 角色和客户端将此扩展到编程访问。
运维层:使用 Terraform 的 IaC 将配置更改从控制台转移到代码——具有 Git 历史记录、拉取请求审查、自动化测试和回滚功能。持久管理员访问变成例外。
检测层:审计日志、webhook 和 SIEM 集成提供对管理员操作的可见性。Jamf Protect 遥测增加了行为分析。
架构层:Jamf Pro 的按设备擦除设计对大规模破坏性操作造成自然摩擦,不像支持从单个管理操作进行批量擦除的平台。
行动号召:像对待云基础设施一样对待您的 MDM。联合身份验证。强制最小权限。转向 IaC。监控一切。这些工具今天已存在于 Jamf 生态系统中——问题是您的组织是否已实施它们。