Windows Netlogon信息泄露;Netlogon 是 Windows 域环境中的一个核心认证协议。它用于在域成员(如用户电脑、服务器)和域控制器之间建立安全通道,以便执行各种关键操作;攻击者能够通过利用 Netlogon 协议中的漏洞,获取他们本不应有权限访问的敏感信息。
CVE-2026-41089(Netlogon 零点击 RCE)
一、基本信息
- CVE ID:CVE-2026-41089
- 漏洞类型:栈缓冲区溢出(CWE-121)
- 影响组件:Windows Netlogon 服务(
netlogon.dll) - 影响系统:Windows Server 2012–2025(域控制器 / 已加域服务器)
- CVSS 3.1:9.8(AV:N/AC:L/PR:N/UI:N/C:H/I:H/A:H)
- 公开 / 补丁:2026-05-12 披露,5 月补丁日修复;已在野利用、POC/EXP 公开
二、漏洞原理(一句话)
NetrServerAuthenticate3 RPC 函数处理 CLDAP(UDP/389)请求时,Unicode 字符串长度计算错误(字节数 vs WCHAR 数),导致栈缓冲区溢出,可远程覆盖执行流。- 调用者传
maxLen=260(字节) - 被调用者按 260×2=520 字节写入栈缓冲区(仅 260 字节)→ 越界写
三、攻击面与利用
- 入口:UDP/389(CLDAP DC 定位器)、TCP/135 + 动态端口(Netlogon RPC)
- 权限:无需认证、零点击,仅需网络可达
- 结果:域控制器上 SYSTEM 权限远程代码执行,接管整个域
- 在野:2026-06-01 比利时 CCB 确认活跃利用,自动化扫描 / 攻击工具已出现
四、影响范围
- Windows Server 2012/R2、2016、2019、2022、2025(域控 / 已加域)
- 非域控服务器默认不受影响,但已加域仍暴露
五、修复与缓解
- 紧急打补丁:安装 2026-05 月累积更新(KB5037768 等)
- 临时缓解(未打补丁时):
- 防火墙阻断 UDP/389、TCP/135 及 Netlogon 动态端口
- 域控仅允许信任 IP访问 Netlogon/CLDAP
- 禁用 Netlogon 服务(慎做,影响域功能)
- 检测:监控 LSASS 进程异常崩溃、UDP/389 恶意请求、域控异常登录 / 权限变更
六、风险总结
详细解析一下“Windows Netlogon 信息泄露”这个安全问题。这是一个非常重要且影响深远的安全话题,核心围绕着微软的 Netlogon 远程协议 中的一个严重漏洞(通常被称为 ZeroLogon)。
1. 什么是 Netlogon 协议?
首先,理解 Netlogon 是什么至关重要。
-
功能: Netlogon 是 Windows 域环境中的一个核心认证协议。它用于在域成员(如用户电脑、服务器)和域控制器之间建立安全通道,以便执行各种关键操作,例如:
-
用户登录认证
-
组策略更新
-
计算机密码更改
-
时间同步
-
-
重要性: 这个安全通道是域信任的基础。如果它被攻破,整个 Active Directory 域的安全性都会受到严重威胁。
2. “信息泄露”的具体含义是什么?
“信息泄露”在这里是一个比较宽泛的说法,它通常指的是攻击者能够通过利用 Netlogon 协议中的漏洞,获取他们本不应有权限访问的敏感信息。这具体可能表现为:
-
窃取凭据: 拦截或伪造认证过程,从而获取用户或计算机的哈希值或凭据。
-
获取域成员信息: 通过未授权的查询,获取域内的计算机账户、用户列表等信息。
-
为权限提升铺路: 获取的信息(如计算机账户的哈希)可以被用于后续的攻击,例如 Silver Ticket 攻击,从而完全控制该计算机。
3. 核心漏洞:CVE-2020-1472 (ZeroLogon)
虽然 Netlogon 历史上存在多个漏洞,但最著名、最严重的一个就是 CVE-2020-1472,也被称为 ZeroLogon。
-
漏洞本质: 这不是传统意义上的“数据被意外发送出来”的信息泄露,而是一个特权提升漏洞。它允许攻击者完全绕过认证,直接将自己伪装成域控制器,从而可以执行最高权限的操作。
-
技术原理(简化):
-
Netlogon 在建立安全通道时使用 AES-CFB8 加密模式。
-
该模式在实现上存在缺陷,导致在使用全零的初始化向量和密钥时,有很高的概率(约 1/256)认证成功。
-
攻击者可以不断重放全零的凭据,在几次尝试后即可成功与域控制器建立一条未经认证的、但拥有管理员权限的安全通道。
-
-
攻击者能做什么(信息泄露与破坏):
一旦利用此漏洞成功,攻击者可以:-
重置域控制器的机器账户密码: 这是最致命的操作。攻击者可以将域控制器在 AD 中的密码重置为一个已知的值。
-
获取域控制器凭据: 在密码被重置后,攻击者可以使用这个已知的密码向域控制器进行认证,并请求所有用户的凭据数据(NTLM 哈希),这相当于获取了整个域的“万能钥匙”。
-
完全控制域: 拥有域控制器的哈希后,攻击者可以创建新用户、加入域管理员组、部署后门等,实现对整个域的完全掌控。
-
所以,在 ZeroLogon 的语境下,“信息泄露”的严重性被提升到了极致——泄露的是整个 Active Directory 域的所有秘密。
4. 受影响的系统
-
Windows Server 2008 R2 及之后的所有服务器版本(作为域控制器时)
-
相应的 Windows 客户端系统在与域控制器通信时也可能受到影响。
5. 如何防护与修复
微软已经发布了修复此漏洞的补丁,并强制推行了更安全的协议模式。
-
立即安装补丁:
-
确保所有域控制器都安装了 2020 年 8 月及之后的安全更新。这些更新强制实施了 Netlogon 安全 RPC,要求对连接进行签名和加密。
-
-
启用“强制模式”:
微软的修复分为两个阶段:-
第一阶段:强制执行模式: 域控制器在收到未签名的 Netlogon 请求时会记录事件 ID 5829(警告),但仍允许连接以保持兼容性。
-
第二阶段:强制模式: 域控制器会拒绝来自未打补丁的客户端的、不安全的 Netlogon 请求。
-
操作: 您需要通过组策略在所有域控制器上启用强制模式。关键注册表项是
FullSecureChannelProtection和RequireSignOrSeal。
-
-
使用 Microsoft 的检测脚本:
微软官方提供了 PowerShell 脚本来检测您的域控制器是否容易受到 ZeroLogon 攻击。强烈建议运行此脚本进行自查。 -
网络层面控制:
-
限制对域控制器(TCP 端口 445、135 等)的网络访问,只有必要的域成员可以与其通信。
-
“Windows Netlogon 信息泄露”通常特指像 ZeroLogon (CVE-2020-1472) 这样的高危漏洞。它远不止是泄露一些普通数据,而是可能泄露整个域的认证凭据,导致整个网络被完全攻陷。
对于任何仍在使用 Windows 域环境的组织来说,验证并确保 Netlogon 漏洞已被完全修复是当前最重要、最紧迫的安全任务之一。 必须确保所有域控制器都已打补丁并运行在“强制模式”下。
Netlogon(netlogon.dll/ MS-NRPC 协议)完整演进史
基础概念统一
- 载体:
netlogon.dll为用户态核心动态链接库,承载Netlogon服务(运行于lsass.exe),实现 MS-NRPC(Netlogon 远程协议)。 - 核心职能:维护域安全通道、DC 定位(DCLocator)、NTLM 直通认证、机器账户密码同步、AD 策略下发、RPC 安全会话协商。
- 演进主线:NT4.0 单域 NetBIOS 架构 → Win2000 AD DNS 标准化 → 漏洞修复分层加固(Zerologon)→ RPC 密封强制、淘汰 NetBIOS/NTLM、硬件安全联动(2021–2026)。
阶段一:初代原型(Windows NT 3.51 / NT 4.0,1995–1998)—— 纯 NetBIOS 单域架构
1. 底层设计
- 依赖 NetBIOS/WINS/mailslot 广播定位 PDC/BDC 域控,无 DNS;
netlogon.dll仅实现 NTLMv1 认证、PDC 账户数据库复制、工作站安全通道;- MS-NRPC 协议无强制加密 / 密封,会话 IV 固定、加密强度弱。
2. 核心能力
- DCLocator:通过 WINS、广播 mailslot 报文发现域控;
- 安全通道:机器账户明文哈希协商会话;
- NTLMv1 直通认证,所有域登录凭据通过 Netlogon 转发 PDC。
3. 致命短板
- 无 DNS 支持,多域、跨林完全无法支撑;
- NTLMv1、无 RPC 密封,中间人可劫持凭据;
- MS-NRPC 加密逻辑简陋,存在会话伪造、哈希重放漏洞;
- 无 Kerberos,仅依赖 NTLM 单一认证。
4. 默认状态:无任何强制安全策略,兼容优先。
阶段二:Active Directory 标准化重构(Windows 2000 / Server 2003,2000–2003)—— DNS+Kerberos 双协议落地
1. 架构里程碑(AD 诞生,Netlogon 全面重构 netlogon.dll)
- DNS 优先 DC 定位
DCLocator 新增
DsGetDcNameAPI,优先查询 DNS LDAP SRV 记录,NetBIOS 降级为兼容备选,奠定多域 / 跨林基础Microsoft ...。 - Kerberos 为主、NTLM 为辅
Netlogon 新增 Kerberos PAC 校验逻辑,安全通道同时支撑两种协议;NTLMv2 正式替代不安全 NTLMv1。
- MS-NRPC 协议加固
引入 AES-CFB8 会话加密、RPC 密封(Seal)机制,安全通道默认协商加密会话;
- 新增能力:
- 域组策略、SYSVOL/NETLOGON 共享文件同步;
- 跨域信任安全通道维护;
- 机器账户密码自动周期同步至 DC。
2. 关键局限
- RPC 密封为可选协商,老旧客户端可降级关闭加密;
- NetBIOS/mailslot 未移除,仍存在广播嗅探风险;
- AES-CFB8 加密存在底层缺陷(为后续 Zerologon 漏洞埋下隐患);
- 无全局审计日志,无法批量监控异常 Netlogon 会话。
阶段三:Vista / Win7 / Server 2008 R2(2006–2012)—— 基础安全基线固化
1. 安全能力升级
- NTLMv1 可通过组策略全局禁用,强制 NTLMv2;
- 可配置 RPC 密封强制(
RequireSeal注册表项),阻断无加密 Netlogon 会话; - DCLocator 缓存优化,减少 DNS / 广播探测流量;
- 日志标准化,新增安全通道建立 / 断开审计事件;
- 支持只读域控 RODC,Netlogon 缓存本地凭据减少 DC 压力。
2. 未解决核心缺陷
阶段四:漏洞危机与分阶段强制加固(Win10 1507–20H2 / Server2016–2019,2015–2020)—— Zerologon 修复核心周期
1. 漏洞爆发:CVE-2020-1472(Zerologon,CVSS 10.0)
漏洞底层成因
netlogon.dll 的 ComputeNetlogonCredential 使用固定 16 字节 IV,攻击者发送全零挑战即可绕过 AES 校验,篡改域控机器账户密码,完整接管 AD 域环境。微软分两阶段修复(彻底重塑 Netlogon 安全逻辑)
- 2020 年 8 月 第一阶段补丁
- 修复加密函数,增加 IV 随机校验;
- 新增审计日志,记录不合规弱安全通道;
- 注册表
FullSecureChannelProtection手动开启强制模式,兼容老旧设备可添加例外白名单Microsoft ...。
- 2021 年 2 月 第二阶段强制落地
- 默认启用全域强制安全 RPC 通道,拒绝无加密、弱 IV 会话;
- 移除默认兼容降级逻辑,仅管理员显式配置才可放行遗留设备。
2. 同期配套加固
- 完善
RequireSeal三层管控:可禁用所有未密封 RPC 会话; - 过滤匿名 RPC 调用,匿名客户端无法执行 DCLocator、密码同步接口;
- netlogon.dll 加载受 HVCI 内存完整性保护,无法被恶意补丁篡改协议逻辑。
阶段五:硬件安全联动、淘汰老旧协议(Win11 21H2~24H2 / Server2022~2025,2021–2026)—— Hardware‑enforced 安全基线
1. Server2022 / Win11 21H2:RPC 密封强制、NTLM 逐步淘汰
- KB5021130 分三阶段收紧
RequireSeal:- 2023.4:移除禁用密封开关;
- 2023.6:默认强制 RPC 密封,无加密 Netlogon 会话直接拒绝Microsoft ...;
- NTLM 审计完整落地,提供全局禁用 NTLM 组策略,推动全 Kerberos 环境;
- 与 VBS/Credential Guard 联动:Netlogon 传递凭据时,自动隔离 LSA 明文哈希至 VTL1 安全层,阻断 Mimikatz 抓取。
2. Server2025 里程碑:彻底弃用 NetBIOS/mailslot
- DCLocator 移除 NetBIOS/WINS/mailslot 定位逻辑,仅保留 DNS SRV 查询,彻底消除广播嗅探攻击面Microsoft ...;
- Netlogon RPC 拒绝匿名客户端:匿名调用 DC 定位、密码同步接口直接拦截(KB5058411)Microsoft ...;
- SYSVOL/NETLOGON 共享默认强制 SMB 签名,拦截中继攻击;
- 嵌套虚拟化、Secured-core 服务器深度适配,Netlogon 安全通道校验集成 Secure Launch 固件信任链。
3. 2026 最新演进趋势
- 逐步移除 MS-NRPC 遗留 NTLM 直通逻辑,默认优先 Kerberos;
- 扩展硬件绑定:TPM/Pluton 芯片参与安全通道密钥协商;
- 云域 Azure AD DS 优化 Netlogon 跨区域 DC 定位,支持零信任网络分段。
分版本核心能力演进对比表
| 系统阶段 | DCLocator 定位方式 | MS-NRPC 加密 / RPC 密封 | 核心安全约束 | 默认防护强度 |
|---|---|---|---|---|
| NT4.0 | NetBIOS/WINS 广播 | AES 无随机 IV、密封可选 | 无强制策略 | 极低 |
| Win2000/2003 | DNS 优先,NetBIOS 兼容 | AES-CFB8、密封协商可选 | 仅禁用 NTLMv1 | 低 |
| Win7/2008R2 | DNS 优先,缓存优化 | 密封可手动强制 | 可审计弱通道 | 中 |
| Win10 20H2(Zerologon 修复后) | DNS 为主,NetBIOS 兼容 | 分阶段强制安全通道 | FullSecureChannelProtection 可全局开启 | 中高 |
| Win11/Server2022 | DNS 唯一,NetBIOS 弃用进程 | 默认强制 RPC 密封 | 拦截匿名、弱 IV 会话 | 高 |
| Server2025+ | 纯 DNS SRV,彻底移除 NetBIOS | 密封不可关闭、匿名 RPC 拦截 | 联动 HVCI/VBS/TPM 硬件信任链 | 极高 |
四大演进核心趋势总结
1. 定位机制:广播 NetBIOS → 标准化 DNS,彻底消除内网嗅探攻击面
2. 协议安全:可选加密密封 → 全域强制硬件校验
3. 认证体系:单一 NTLMv1 → Kerberos 为主、NTLM 逐步淘汰
4. 安全底座:独立服务 → 全链路软硬件纵深联动
- 固件层:Secure Launch/TPM;
- 虚拟化层:VBS/HVCI/Credential Guard;
- 网络层:强制 SMB 签名、RPC 密封、匿名拦截;
形成从开机到域认证的完整信任链。
演进安全核心价值
- 修复致命域接管攻击面:Zerologon(CVE-2020-1472)修复是 AD 安全分水岭,封堵了远程无权限完整接管域环境的高危漏洞;
- 消除遗留弱协议攻击向量:逐步淘汰 NetBIOS、NTLMv1、无密封 RPC 会话,大幅缩减内网横向移动入口;
- 打通 Windows 全套安全体系:Netlogon 作为域身份核心桥梁,对接 VBS、HVCI、Defender、TPM 硬件安全,成为等保、零信任架构的基础加固组件;
- 分层兼容机制:分阶段强制策略兼顾老旧工控设备与政企安全基线,实现平滑升级,无需一次性全域停机改造。
Netlogon(netlogon.dll + MS-NRPC)完整底层原理
一、整体分层架构链
客户端进程(Winlogon/lsass/域服务)
↓ 本地API:DsGetDcName、NetLogon* 本地导出函数
netlogon.dll(用户态核心逻辑,承载MS-NRPC协议栈)
↓ RPC Runtime(rpcrt4.dll)封装MS-NRPC远程调用
TCP/UDP 445 / 135 + 动态RPC端口 / 旧版mailslot 138
↓ 域控端 netlogon.dll(DC侧接收RPC请求)
↓ DC本地 lsass.exe、SAM数据库、AD NTDS.dit
分层职责拆解
- 上层调用方
winlogon.exe桌面登录、lsass.exe凭据管理、组策略客户端、RODC 缓存服务,通过本地 API 向 netlogon.dll 发起域控查询、认证、密码同步请求。 - netlogon.dll(核心用户态库,加载于 lsass.exe)
实现三大核心模块:DC 定位器 DCLocator、MS-NRPC RPC 协议封装、安全通道加密 / 校验、NTLM/Kerberos PAC 转发;本机所有域身份相关逻辑全部由该库实现,无独立内核驱动。
- RPC 运行时 rpcrt4.dll
负责 RPC 报文序列化、传输层封装、RPC 密封(Seal)、身份会话协商,MS-NRPC 基于标准 RPC over TCP 实现。
- 网络传输层
- 现代系统:TCP 135 + 动态 RPC 端口,SMB over TCP 445;
- NT4/Win2000 遗留:UDP 138 mailslot NetBIOS 广播(新版 Server2025 彻底移除)。
- 域控后端
DC 端 netlogon.dll 接收 RPC 后,对接本地 SAM 数据库、AD NTDS.dit 活动目录,完成账户校验、机器密码更新、策略下发。
二、三大核心底层模块完整原理
模块 1:DCLocator 域控定位器(DsGetDcName 底层逻辑)
1. 现代 DNS 优先路径(Win2000 至今,默认主逻辑)
- netlogon.dll 向 DNS 服务器查询 LDAP SRV 资源记录:
_ldap._tcp.dc._msdcs.域名; - 解析返回域控主机名、IP、端口;
- 发起轻量 LDAP ping 校验 DC 在线、站点匹配、角色(PDC/GC/RODC);
- 缓存 DC 信息至内存,减少重复 DNS 查询。
2. 遗留兼容路径(NT4 NetBIOS mailslot,Win11/Server2025 移除)
- 全网 UDP 138 广播 mailslot 报文,携带本机域名;
- 内网在线 DC 收到广播后单播回复自身信息;
- 无加密明文广播,易被嗅探、伪造 DC(中间人攻击)。
缓存机制
模块 2:MS-NRPC 远程协议底层(Netlogon RPC,核心安全载体)
1. 核心 RPC 接口集(netlogon.dll 实现)
NetrServerAuthenticate3:建立 / 协商机器账户安全通道(Zerologon 漏洞接口)NetrLogonSamLogonEx:NTLM 直通域登录认证NetrChangePassword:工作站机器账户密码同步至 DCNetrDatabaseDeltas:AD 数据库增量同步、SYSVOL 策略同步NetrGetDCName:远程 DC 信息查询
2. 安全通道(Secure Channel)底层握手流程(最关键安全链路)
- 握手阶段(NetrServerAuthenticate3)
- 客户端携带本机机器账户名、随机客户端挑战;
- DC 查询 AD 内本机机器账户 NT 哈希,生成服务器挑战;
- 双方使用机器哈希 + AES-CFB8 算法加密双方挑战,生成会话密钥;
- 协商 RPC 密封(Seal)、签名(Sign)等级,建立加密安全通道。
- 报文传输保护
- Sign:仅校验报文完整性,防篡改;
- Seal:加密 + 完整性校验,拦截中间人嗅探、重放;
2022 年后系统强制开启 Seal,拒绝无加密会话。
3. 经典漏洞底层根源:CVE-2020-1472 Zerologon
NetrServerAuthenticate3 内部函数 ComputeNetlogonCredential 固定使用全零 16 字节初始化向量 IV,未随机生成:- 攻击者构造客户端挑战全为 0;
- AES-CFB8 加密结果恒定为 0;
- DC 校验逻辑仅比对加密结果,直接通过认证;
- 攻击者伪造安全通道,调用密码修改接口将 DC 机器账户哈希置空,完整接管 AD。
补丁底层修复:强制随机 IV,增加零向量拦截校验;新版系统开启
FullSecureChannelProtection阻断弱握手。
4. 加密算法演进底层变化
- NT4:弱 DES,无随机 IV,无密封;
- Win2000~2019:AES-CFB8,IV 可固定(漏洞根源),Seal 可选协商;
- Win10 20H2 / Server2022+:AES-CFB8 强制随机 IV,Seal 不可关闭,拦截零挑战握手。
模块 3:NTLM/Kerberos 认证转发底层逻辑
1. NTLM 直通认证流程(NetrLogonSamLogonEx)
- 用户输入账号密码,lsass 生成 NTLM 哈希;
- 调用 netlogon.dll,通过已建立加密安全通道发送哈希、挑战至 DC;
- DC 本地 SAM/AD 比对哈希,返回认证结果;
- 认证成功下发 PAC 特权属性证书,回传至客户端 lsass 生成访问令牌。
2. Kerberos 辅助校验
- 客户端向 KDC 申请 TGT 票据,票据内 PAC 由 DC 通过 MS-NRPC 生成;
- netlogon.dll 校验 PAC 签名合法性,防止伪造特权票据;
- Credential Guard 开启时,netlogon.dll 将 Kerberos 票据转发至 VTL1 隔离存储,明文哈希不落地 VTL0 内存。
3. RODC 只读域控缓存优化
三、完整标准执行时序(工作站域登录)
1. 用户在登录界面输入域账号密码 → winlogon 传入 lsass.exe
2. lsass 加载 netlogon.dll,调用 DsGetDcName 执行DNS SRV查询,获取可用DC IP
3. netlogon.dll 发起MS-NRPC NetrServerAuthenticate3,与DC协商加密安全通道
3.1 交换机器账户挑战,AES生成会话密钥,开启RPC Seal加密
4. 客户端构造NTLM挑战/哈希,通过加密安全通道调用 NetrLogonSamLogonEx
5. DC端 netlogon.dll 接收RPC报文,解密后查询AD机器账户、用户账户哈希
6. DC校验凭据,生成PAC证书,通过加密通道回传认证结果与票据
7. 客户端 lsass 接收PAC,生成用户安全访问令牌,完成桌面登录
8. 后台持续通过MS-NRPC同步:机器账户密码、组策略SYSVOL文件、AD增量数据库变更
四、配套底层安全联动机制
1. HVCI 内存完整性保护 netlogon.dll
- netlogon.dll 属于系统关键安全二进制,加载时 VTL1 SKCI 校验 WHQL 签名;
- 恶意未签名驱动无法篡改、注入 netlogon.dll 内存,阻止劫持 MS-NRPC 协议逻辑;
- 开启硬件强制 HVCI 后,内核禁止修改该 DLL 内存执行页,封堵协议劫持后门。
2. Credential Guard(VBS)凭据隔离
- netlogon.dll 传递用户哈希、Kerberos 票据时,自动转发至 VTL1
lsaiso.exe; - VTL0 lsass 内存不存储明文 NTLM 哈希、完整 Kerberos 票据;
- Mimikatz 等工具无法抓取域凭据,阻断内网哈希传递横向移动。
3. 注册表安全管控(reg.exe 配置入口)
HKLM\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters,底层控制 Netlogon 安全行为:RequireSeal:强制 RPC 密封,拒绝无加密 MS-NRPC 会话;FullSecureChannelProtection:Zerologon 加固,拦截零 IV 弱握手;DisableNtlm:全局禁用 NTLM 直通认证,仅保留 Kerberos;DnsAvoidRegisterRecords:关闭无用 DC DNS 注册,缩减攻击面。
4. RPC 匿名访问拦截(新版系统底层强制)
五、遗留攻击面底层成因与新版封堵逻辑
| 攻击方式 | 底层原理 | 新版系统封堵手段 |
|---|---|---|
| Zerologon 域接管 | AES-CFB8 IV 固定全零,绕过安全通道校验 | 强制随机 IV、拦截全零挑战、FullSecureChannelProtection 默认开启 |
| NetBIOS DC 伪造 | UDP138 明文广播,中间人伪造 DC 回复 | Server2025 彻底移除 mailslot 广播逻辑,仅保留 DNS SRV 定位 |
| NTLM 哈希传递 | MS-NRPC 转发 NTLM 哈希,可重放凭据 | 支持全局 DisableNtlm,优先 Kerberos;PAC 强签名校验 |
| 无加密 RPC 嗅探 | RPC Seal 可选协商,老旧客户端降级明文传输 | 2023 年永久强制 RequireSeal,不可关闭 |
| 匿名 RPC 探测 | 匿名调用 DCLocator 查询内网域控信息 | RPC 运行时拦截所有匿名 MS-NRPC 接口调用 |
六、底层核心特性总结
- 用户态全栈实现
Netlogon 所有逻辑(DCLocator、MS-NRPC、加密、认证转发)全部在用户态 netlogon.dll 完成,无独立内核驱动,依托标准 RPC、Win32 API 与内核交互。
- 安全通道为全域信任根基
所有跨主机域操作依赖机器账户哈希协商加密会话,是 AD 域身份信任底层载体;Zerologon 漏洞正是破坏该握手逻辑,实现全域域控接管。
- 分层兼容设计
底层同时兼容老旧 NetBIOS、现代 DNS;加密算法、RPC 密封分阶段强制,兼顾工控老旧终端与政企安全基线平滑升级。
- Windows 安全体系串联枢纽
向上对接桌面登录、服务身份,中间实现 RPC 域网络协议,向下联动 HVCI/VBS/TPM 硬件安全,是域环境纵深防御不可缺失的中间层组件。
Windows Netlogon信息泄露(Windows Netlogon Information Disclosure)是指利用Windows操作系统中Netlogon组件的漏洞,可能导致敏感的凭据和其他网络身份验证数据被未经授权的访问者获取。
Netlogon 是Windows中的一个关键组件,负责处理计算机之间的身份验证和安全通信。攻击者可以利用存在的漏洞来执行信息泄露攻击,获取Netlogon组件中存储的敏感信息。
导致Windows Netlogon信息泄露的原因可能包括以下几个方面:
密码破解:攻击者可能使用弱密码或密码破解技术来获取Netlogon组件的凭据信息。
操作系统漏洞:存在未修补的操作系统漏洞可能导致Netlogon组件受到攻击,并泄露其中的信息。
社会工程学攻击:攻击者可能通过欺骗用户或管理员来获取他们的凭据信息,然后利用这些信息访问Netlogon组件。
为了防止Windows Netlogon信息泄露,可以采取以下措施:
及时更新操作系统和软件:确保操作系统和相关软件都是最新的版本,并及时应用补丁程序和安全更新,以修复已知的漏洞。
使用强密码策略:制定强密码策略并加强对用户账户的访问控制,避免使用弱密码和常见密码。
启用多因素认证:启用多因素认证可增加身份验证的安全性,降低被攻击者利用泄露的凭据进行访问的风险。
定期审查日志:定期审查Netlogon组件相关的日志,以检测异常活动和潜在的信息泄露情况。
培训与意识:提供安全培训与意识教育,加强用户和管理员对社会工程学攻击的防范意识,避免被欺骗泄露凭据。
请记住,上述建议是一般性的安全措施。针对具体的Windows Netlogon漏洞和攻击技术,可能需要参考厂商发布的安全公告和建议,及时采取相应的补救措施。同时,遵守法律法规,不要滥用漏洞或进行非法活动。
Netlogon 是 Windows 域环境的核心身份与服务组件,netlogon.dll 是其核心用户态动态链接库,负责域环境下的身份认证、服务定位、策略分发等核心逻辑,是域功能正常运转的基础。以下从定位、核心机制、工作流程、交互关系等维度详解其底层原理:
一、基本定位与核心职责
1. 基础属性
- 服务名:
Netlogon,默认运行在域控制器(DC) 和所有加入域的客户端上,但两端职责差异极大:- DC 上的 Netlogon 是域身份服务的核心处理器,负责处理所有客户端的认证请求、DC 定位、信任关系维护、组策略分发等全局逻辑;
- 客户端上的 Netlogon 是轻量级代理,仅负责维持和 DC 的安全通道、本地认证请求转发、后台策略刷新等本地逻辑。
- 宿主进程:运行在
svchost.exe服务宿主进程中,DC 上默认和 KDC(Kerberos 密钥分发中心)、DFS 等服务共享同一个 svchost 实例;客户端上默认和工作站、浏览器服务共享 svchost 实例。 - 依赖项:启动依赖
RPCSS(RPC 服务)、SAM(安全账户管理器)、DNS 客户端等核心系统组件。
2. 核心职责
Netlogon 覆盖了域身份生命周期的全流程逻辑,核心职责包括:
- DC 自动定位:自动注册/查询域控制器的 DNS/NetBIOS 记录,实现客户端就近访问 DC;
- 安全通道维护:建立客户端与 DC 之间的加密通信通道,防止身份凭证被窃听篡改;
- 身份认证处理:协调 NTLM、Kerberos 等认证协议,完成用户/计算机的登录验证、票据签发;
- 信任关系管理:处理域内、跨域、跨林的身份验证与权限传递;
- 策略与脚本分发:拉取、校验组策略对象,分发并执行域登录脚本;
- 密码同步:处理域用户密码变更、跨域密码同步等逻辑。
二、核心底层原理
1. 服务启动与初始化流程
Netlogon 作为 RPC 服务器启动时,会依次完成以下初始化逻辑:
- 从注册表读取配置参数,包括安全通道有效期、RPC 传输协议、加密强度、DC 定位策略等;
- 向 RPC 运行时注册自身暴露的所有接口端点(默认通过命名管道
\pipe\netlogon、TCP 135 端口提供 RPC 服务); - 初始化安全上下文,加载与 LSA、SAM、KDC 的交互接口;
- 若运行在 DC 上,会自动向 DNS 注册本机的 DC 相关 SRV 记录、A 记录,以及站点归属信息,供客户端定位。
2. 核心工作机制
(1)DC 定位器(DC Locator)
DC 定位是 Netlogon 独有的核心能力,解决“客户端如何找到可用 DC”的问题:
- DC 端注册:DC 启动时,Netlogon 会自动向 DNS 注册两类核心 SRV 记录:
_ldap._tcp.dc._msdcs.<域名>:标识域内所有 DC 的 LDAP 服务地址;_kerberos._tcp.dc._msdcs.<域名>:标识 Kerberos KDC 服务地址; 同时会携带站点信息(如_site.<站点名>.<域名>),实现站点感知。
- 客户端查询:客户端需要找 DC 时,会通过 DNS 客户端查询上述 SRV 记录,优先返回同站点的 DC 列表;如果没有 DNS,会 fallback 到 NetBIOS 的
<域名><1C>广播查询。 - DC 健康校验:Netlogon 会自动检测 DC 的健康状态,若某 DC 离线,会自动从 DNS 中剔除其记录,避免客户端请求失败。
(2)安全通道建立与维护
Netlogon 的所有跨机器通信都通过加密安全通道传输,避免身份凭证泄露:
- 建立流程:
- 客户端发起 Netlogon RPC 调用时,首先使用本机的域计算机账户凭证(存储在 SAM 数据库中)向 DC 发起认证;
- DC 验证计算机账户合法性后,双方基于计算机账户的密码哈希协商出会话密钥,后续所有 RPC 通信都用该密钥加密/签名;
- 维护机制:
- 安全通道默认有效期为 30 天,到期后自动重新协商;
- 若 DC 重启、计算机账户密码变更,客户端会自动检测到通道失效,重新建立安全通道;
- 支持多 DC 冗余:客户端和每个可达的 DC 都会维护独立的安全通道,单 DC 故障不影响其他通道。
- 加密强度:Windows Server 2008 及以上版本默认支持 AES128/AES256 会话密钥,替代了早期不安全的 RC4 加密。
(3)域身份认证处理
Netlogon 是域认证的核心协调者,和 LSA、SAM、KDC 深度协同完成用户/计算机的认证:
- NTLM 认证流程:
- 客户端发起登录请求时,Netlogon 先通过安全通道将请求转发给 DC 的 Netlogon 服务;
- DC 端的 Netlogon 调用 SAM 接口查询对应用户的密码哈希,生成 NTLM 挑战值返回给客户端;
- 客户端用本地存储的密码哈希计算挑战响应,回传给 DC;
- DC 端的 Netlogon 对比响应值和本地计算的预期值,验证通过则返回认证成功凭证。
- Kerberos 认证流程: DC 上的 Netlogon 和 KDC 同进程运行,共享 SAM 数据库访问权限:Netlogon 收到 Kerberos 认证请求后,会直接调用 KDC 的接口生成 TGT(票据授予票据)、TGS(服务票据),无需跨进程通信,提升效率。
(4)信任关系管理
对于跨域、跨林的信任场景,Netlogon 负责验证信任路径的合法性:
- 若用户从林 A 访问林 B 的资源,林 B 的 DC 上的 Netlogon 会先验证请求来源的林 A DC 的身份是否合法,再检查林 A 和林 B 之间是否存在有效的信任关系,最后才允许认证请求通过。
- 支持外部信任、林信任、快捷信任等多种信任类型的验证和票据转发。
(5)组策略与登录脚本分发
用户登录或后台策略刷新时,Netlogon 负责从域控的 SYSVOL 共享文件夹拉取策略和脚本:
- 首先通过 LDAP 查询用户/计算机所属的 GPO(组策略对象)列表;
- 校验 GPO 的版本号和数字签名,确保没有被篡改;
- 从
\\<DC>\SYSVOL\<域名>\Policies目录下载最新的 GPO 文件; - 将登录脚本同步到本地,交给 Winlogon 服务执行;
- 后台默认每 90 分钟自动刷新一次组策略,也可通过
gpupdate /force手动触发。
3. 关键组件与交互关系
Netlogon 是用户态组件,但依赖大量内核/系统组件协作,核心交互关系如下:
| 交互组件 | 作用 |
|---|---|
| LSA(本地安全机构) | 负责和内核态安全子系统交互,传递认证凭证、令牌等信息 |
| SAM(安全账户管理器) | 存储域用户/计算机的密码哈希、账户属性,Netlogon 认证时从 SAM 查询凭证 |
| KDC(Kerberos 密钥分发中心) | DC 上和 Netlogon 同进程,负责 Kerberos 票据的签发和验证 |
| DNS 客户端 | 负责查询/注册 DC 的 DNS 记录,实现 DC 定位 |
| RPC 运行时 | 提供 Netlogon 的跨机器通信能力,所有对外接口均为 RPC 接口 |
| SMB/文件系统 | 访问 SYSVOL 共享、域共享资源,拉取组策略和登录脚本 |
三、典型工作流程示例:域用户登录
以客户端用户输入域账户密码登录为例,Netlogon 的完整参与流程:
- DC 定位:客户端 Netlogon 通过 DNS 查询同站点的 DC 列表,优先选择可达的 DC;
- 安全通道建立:客户端 Netlogon 用本机计算机账户凭证和 DC 建立加密安全通道;
- 认证请求转发:客户端 Netlogon 将用户的登录凭证通过安全通道转发给 DC;
- 身份验证:DC 端 Netlogon 调用 SAM 查询用户密码哈希,完成 NTLM/Kerberos 认证,生成用户访问令牌;
- 策略拉取:Netlogon 查询该用户/计算机关联的 GPO,从 SYSVOL 下载最新策略和登录脚本;
- 登录完成:Netlogon 将认证令牌、组策略配置、登录脚本传递给 Winlogon,完成用户登录流程。
四、安全特性与常见问题
1. 核心安全机制
- 默认强制要求 Netlogon RPC 接口启用签名和加密,Windows Server 2012 及以上版本默认禁用明文 RPC 调用;
- 会话密钥定期轮换,支持 AES 高强度加密,避免暴力破解;
- 所有认证请求都会校验计算机账户、用户账户的合法性,防止伪造请求。
2. 典型漏洞
最知名的是 CVE-2020-1472(Zerologon 漏洞):由于 Netlogon 的 RPC 接口在初始化安全通道时未正确校验会话密钥的合法性,攻击者可以使用空会话密钥冒充 DC,获取域管理员权限,该漏洞影响所有未打补丁的 Windows 域环境。
3. 常见问题排查
- 安全通道损坏:用户登录提示“信任关系失败”,可通过
nltest /sc_reset:<域名>重置安全通道; - 登录缓慢:可通过
nltest /dsgetdc:<域名>检查 DC 定位是否正常,排查 DNS、网络连通性问题; - 组策略不生效:可查看系统日志中 Netlogon 相关事件(事件ID 5719 为安全通道失败,5805 为 DC 记录注册失败),排查权限、网络问题。

浙公网安备 33010602011771号