SCCM防御

可以参考 SharpSCCM wiki.的防御措施

1. Configuration Manager服务器防御

  • 安装补丁KB15599094 并为客户端推送安装禁用 NTLM,以防止通过客户端推送进行强制攻击。
  • 利用增强型 HTTP 并停用网络访问账户。
  • 禁用全站点自动客户端推送安装,改用基于软件更新的安装方式。
  • 设置强 PXE 启动密码以防止破解并获取 OSD 凭据。
  • 在生产环境的 PXE 启动网络中,通过取消选中“启用命令支持”选项来禁用“F8 调试”。
  • 需要 PKI 证书进行客户端身份验证,以防止恶意设备注册。
  • 为 SMS 提供程序调用启用多因素身份验证。请参阅 How to enable MFA for SMS Provider calls.
  • 避免为 NAA/客户端推送/域加入/任务序列/集合变量使用权限过高的凭据(例如域管理员)。
  • 不要在系统上启用 WebClient,以防止通过 HTTP 进行强制访问。
  • 避免使用 ConfigMgr 管理零层资产(例如域控制器),或将 ConfigMgr 视为零层。
  • 使用与站点设备同级别的账户访问 ConfigMgr 控制台。

2. 域/服务器

  • 启用 SMB 签名,以防止中继到 SMB。
  • 在域控制器上强制执行 LDAP 签名或通道绑定,以防止中继到 LDAP。
  • 必须在 AD CS 服务器上启用身份验证扩展保护(EPA),以防止中继到 HTTP。
  • 在将 ConfigMgr 过渡到增强型 HTTP 后,在 AD 中禁用网络访问账户。
  • 为非管理员用户禁用 SeMachineAccountPrivilege/MachineAccountQuota,以防止他们向域中添加计算机
  • 移除不需要此权限的用户的扩展权限分配,以防止 GetLAPSPassword 创建账户
  • 在启用密码加密的情况下,从传统 LAPS 过渡到 Azure 中的 Windows LAPS

3. 数据库

  • 在站点数据库上启用身份验证的扩展保护 (EPA),以增强数据库安全性并防止中继到 MSSQL
  • 避免将其他数据库链接到您的站点数据库,尤其是使用 DBA 权限时
  • 设置 DBA 账户的强密码

4. 防火墙/网络

  • 阻断所有不必要的站点系统连接,特别是 SMB 和 MSSQL,以减少通过 SMB 的强制攻击及向 SMB/MSSQL 的中继攻击
  • 仅授权管理员可在 VLAN 上支持 PXE 启动,确保只有经批准的人员才能访问此功能

5. 安全

  • 监控现场系统及使用站点账户的可疑活动。
  • 关注站点系统计算机账户从其静态 IP 地址之外的 IP 地址进行身份验证的情况。
  • 追踪客户端、推送安装账户以及从主站点服务器以外的任何位置进行身份验证的行为。
  • 使用金丝雀网络访问账户,并监控客户端推送安装账户在任何位置进行的身份验证
  • 确保合法的网络访问账户仅向分发点进行身份验证。
  • 在站点的审计状态消息中检测异常应用程序部署。