Windows 域环境下的安全协议选择策略

作者:袖梨 2026-07-11
Windows域安全协议加固核心是禁用NTLMv1/LM、SMBv1及LDAP明文传输,强制Kerberos启用AES加密、预认证与票据时效控制,并通过SMB签名、RBCD和Credential Guard阻断中继与凭证转储。

windows 域环境中,安全协议的选择不是“用哪个更好”,而是“哪些必须停、哪些必须强、哪些必须控”。核心逻辑是:砍掉所有已知不安全的旧协议,把认证流量收敛到 kerberos,并用策略堵住它的薄弱环节。不依赖新增功能,靠精准禁用和参数收紧来降低攻击面。

必须禁用的三类高危协议

NTLMv1、LM 和 SMBv1 不是“可选关闭”,而是“默认就该不存在”。它们存在固有设计缺陷,支持离线爆破、中继攻击且无法修补。

  • NTLMv1/LM:通过组策略设置“网络安全:LAN Manager 身份验证级别”为“发送 NTLMv2 响应,拒绝 LM & NTLM”;域控制器上还需检查注册表项 HKLMSYSTEMCurrentControlSetControlLsaLMCompatibilityLevel 值为 5 或更高
  • SMBv1:PowerShell 执行 Disable-WindowsOptionalFeature -Online -FeatureName smb1protocol -NoRestart,再确认 Get-SmbServerConfiguration | Select EnableSMB1Protocol 返回 False
  • LDAP 简单绑定:在域控制器上用 ldp.exe 连接后,修改 CN=Directory Service,CN=Windows NT,… 配置,添加属性 ldapEnforceChannelBinding=1 并关闭 AllowUnencryptedPassword

Kerberos 必须启用的三项加固

Kerberos 是唯一推荐的默认认证协议,但默认配置仍宽松。需从加密强度、预认证和票据时效三方面收紧。

  • 仅允许 AES 加密类型:GPO 中配置“网络安全性:为 Kerberos 配置允许的加密类型”,只勾选 AES128_HMAC_SHA1 和 AES256_HMAC_SHA1,取消 DES、RC4
  • 强制启用预身份验证:对所有用户(尤其管理员、服务账户),在 AD 用户和计算机中打开属性 → 账户 → 确保“此账户支持 Kerberos 预身份验证”已勾选,防止 AS-REP roasting
  • 缩短票据生命周期:GPO 设置“用户票证最大生存时间”≤10 小时、“服务票证最大生存时间”≤6 小时;同时将“时钟偏差容限”保持默认 5 分钟,避免时间不同步引发故障

阻断 NTLM 流量滥用路径

即使保留 NTLMv2,若未限制使用场景,仍可能被中继到 HTTP、SMB 或 LDAP。必须叠加控制层:

  • 启用 SMB 签名:GPO 配置“Microsoft 网络服务器:要求数字签名(全部)”和“Microsoft 网络客户端:要求数字签名(全部)”,强制通信完整性
  • 部署 RBCD(基于资源的约束委派):替代传统委派,让目标服务自主决定是否接受委派请求,避免域控被滥用为跳板
  • 启用 Credential Guard:在支持虚拟化的服务器/终端上开启,隔离 LSASS 进程,使 Mimikatz 等工具无法直接读取内存中的 NTLM 哈希

认证通道统一收口

避免多协议并存导致策略失效。RDP、IIS、文件共享等服务应统一要求 NLA(网络级身份验证),并在防火墙或负载均衡器上终止非加密连接。

  • RDP 必须启用 NLA,对应 GPO:“远程桌面会话主机 → 安全 → 要求使用网络级身份验证对远程连接进行身份验证”
  • IIS 上禁用 NTLM 回退,只允许 Negotiate(即 Kerberos);若必须用 NTLM,需配合 IIS 的 Windows 身份验证模块 + IP 白名单
  • 所有对外暴露的 Web 应用,优先集成 Azure AD 或 ADFS 实现现代身份认证,而非直连域控走 LDAP/Kerberos

相关文章

精彩推荐