SYSVOL 强化干扰 Tenable Identity Exposure
SYSVOL 是位于 Active Directory 域中每个域控制器 (DC) 的共享文件夹。它存储组策略 (GPO) 的文件夹和文件。SYSVOL 的内容会在所有 DC 中进行复制,且可通过通用命名约定 (UNC) 路径(例如 \\<example.com>\SYSVOL 或 \\<DC_IP_or_FQDN>\SYSVOL)进行访问 。
SYSVOL 强化是指使用 UNC 强化路径参数,也称为“UNC 强化访问”、“强化的 UNC 路径”、“UNC 路径强化”或“强化路径”等。此功能会响应组策略中的 MS15-011 (KB 3000483) 漏洞。许多网络安全标准(例如 CIS 基准测试)要求强制执行此功能。
当您在服务器消息块 (SMB) 客户端上应用此强化参数时,它实际上会提高已加入域的计算机的安全性,以确保从 SYSVOL 检索的 GPO 内容不会被网络上的攻击者篡改。但在某些情况下,此参数也会干扰 Tenable Identity Exposure 的操作。
如果您发现强化的 UNC 路径中断了 Tenable Identity Exposure 和 SYSVOL 共享之间的连接,请遵循此故障排除部分中的指南。
受影响的环境
以下 Tenable Identity Exposure 部署选项可能会遇到此问题:
-
本地
-
具有安全中继的 SaaS
此部署选项不受影响:
-
带 VPN 的 SaaS
SYSVOL 强化是一个客户端参数,这意味着它在连接 SYSVOL 共享的计算机上运行,而不是在域控制器上运行。
Windows 默认启用此参数,且此参数会干扰 Tenable Identity Exposure。
一些组织亦想确保激活此参数,并通过使用相关的 GPO 设置或直接设置相应的注册表项来强制执行。
-
您可以在“HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkProvider\HardenedPaths”下找到与 UNC 强化路径相关的注册表项:
-
您可以在“Computer Configuration/Administrative Templates/Network/Network Provider/Hardened UNC paths”下找到相应的 GPO 设置:
当引用 SYSVOL 的 UNC 路径(例如“\\*\SYSVOL”)将参数“RequireMutualAuthentication”和“RequireIntegrity”设置为值“1”时,会强制执行 SYSVOL 强化。
SYSVOL 强化问题的迹象
当您怀疑存在与 Tenable Identity Exposure 相关的 SYSVOL 强化干扰时,请检查以下内容:
-
在 Tenable Identity Exposure 中,转至“系统”>“域管理”以查看每个域的 LDAP 和 SYSVOL 初始化状态。
具有正常连接的域会显示一个绿色指示符,而存在连接问题的域会显示一个持续尝试连接的指示符。
-
在目录侦听器或中继计算机上,打开日志文件夹:<Installation Folder>\DirectoryListener\logs。
-
打开 Ceti 日志文件并搜索字符串“SMB 映射创建已失败”或“访问被拒绝”。包含此短语的错误日志表示可能在目录侦听器或中继计算机上发生了 UNC 强化。
修复选项
有两个可能的修复选项:切换到 Kerberos 身份验证或禁用 SYSVOL 强化。
此为首选选项,因为这样做可以避免禁用强化功能。
仅当使用 NTLM 身份验证连接受监控的域控制器时,SYSVOL 强化才会干扰 Tenable Identity Exposure。这是因为 NTLM 与“RequireMutualAuthentication=1”参数不兼容。Tenable Identity Exposure 也支持 Kerberos。如果正确配置和使用 Kerberos,则没有必要禁用 SYSVOL 强化。有关更多信息,请参阅 Kerberos 身份验证
如果无法切换到 Kerberos 身份验证,您还可以选择禁用 SYSVOL 强化。
Windows 默认启用 SYSVOL 强化,因此仅删除注册表项或 GPO 设置是不够的。您必须明确禁用强化,并且仅在托管目录侦听器(本地)或中继(具有安全中继的 SaaS)的计算机上应用此更改。这样做不会影响其他计算机,并且您永远不需要在域控制器本身上禁用 SYSVOL 强化。
托管目录侦听器(本地)或中继(具有安全中继的 SaaS)的计算机上所使用的 Tenable Identity Exposure 安装程序已在本地禁用 SYSVOL 强化。但是,环境中的 GPO 或脚本可能会删除或覆盖注册表项。
有两种可能的情况:
-
如果目录侦听器或中继计算机未加入域,即您不能使用 GPO 配置计算机。您必须禁用注册表中的 SYSVOL 强化(请参阅 注册表 - GUI 或 注册表 - PowerShell)。
-
如果目录侦听器或中继计算机已加入域(Tenable Identity Exposure 不建议此做法),即您可以直接在注册表中应用设置(请参阅 注册表 - GUI 或 注册表 - PowerShell)或使用 GPO 应用设置。使用其中任何一种方法,您必须确保 GPO 或脚本不会覆盖注册表项。您可以通过以下任一方式执行此操作:
-
仔细检查此计算机上适用的所有 GPO。
-
应用更改并稍等片刻,或使用“gpupdate /force”强制应用 GPO,然后检查注册表项是否保留其值。
-
重新启动目录侦听器或中继计算机后,修改后的域上的抓取指示符应变为绿色指示符:
使用 GUI 在注册表中禁用 SYSVOL 强化:
-
以管理权限连接目录侦听器或中继计算机。
-
打开注册表编辑器并导航至:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkProvider\HardenedPaths。
-
创建名为“\\*\SYSVOL”的表项(如果尚不存在),操作如下所示:
使用 PowerShell 在注册表中禁用 SYSVOL 强化:
-
使用此 PowerShell 命令收集 UNC 强化路径注册表项的当前值以供参考:
复制Get-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\NetworkProvider\HardenedPaths"
-
设置建议值:
复制New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\NetworkProvider\HardenedPaths" -Name "\\*\SYSVOL" -Value "RequireMutualAuthentication=0, RequireIntegrity=0, RequirePrivacy=0"
-
重新启动计算机。
先决条件:您必须以 Active Directory 用户身份进行连接,该用户有权在域上创建 GPO 并将其链接到包含 Tenable Identity Exposure 目录侦听器或中继计算机的组织单位。
使用 GPO 禁用 SYSVOL 强化:
-
打开组策略管理控制台。
-
创建新的 GPO。
-
编辑 GPO 并浏览到以下位置:Computer Configuration/Administrative Templates/Network/Network Provider/Hardened UNC paths。
-
启用此设置并使用以下命令创建新的强化 UNC 路径:
-
值名称 = \\*\SYSVOL
-
值 = RequireMutualAuthentication=0、RequireIntegrity=0、RequirePrivacy=0
结果应如下所示:
-
-
点击“确认”以确认。
-
将此 GPO 链接到包含 Tenable Identity Exposure 目录侦听器或中继计算机的组织单位。您还可以使用安全组筛选条件 GPO 功能确保此 GPO 仅适用于此计算机。
之前的过程使用通配符 UNC 路径 (“\\*\SYSVOL”) 禁用 SYSVOL 强化。您也可以仅针对特定 IP 地址或 FQDN 禁用强化。这意味着您可以对“\\*\SYSVOL”保持启用 UNC 强化路径设置(值“1”),并同时拥有与 Tenable Identity Exposure 中配置的域控制器的每个 IP 地址或 FQDN 相对应的例外情况。
下图显示为所有服务器(“*”)启用的 SYSVOL 强化示例,“10.0.0.10”和“dc.lab.lan”除外,它们是我们在 Tenable Identity Exposure 中配置的域控制器:
您可以使用上述注册表或 GPO 方法添加这些附加设置。
禁用 SYSVOL 强化的风险
SYSVOL 强化是一项安全功能,禁用它会引发可能的风险。
-
对于未加入域的计算机,禁用 SYSVOL 强化没有风险。由于这些计算机不应用 GPO,因此不会从 SYSVOL 共享获取内容以执行。
-
对于 Tenable Identity Exposure 不建议加入域的但已加入域的计算机(目录侦听器或中继计算机),如果在目录侦听器或中继计算机与域控制器之间存在使攻击者处于“中间人”情况的潜在风险,则禁用 SYSVOL 强化会不安全。在这种情况下,Tenable Identity Exposure 建议您切换为 Kerberos 身份验证。
此停用范围仅限于目录侦听器或中继计算机,而不包括其他域计算机,更绝不包括域控制器。