
谷歌旗下安全公司 Mandiant 近期公开了一套完整的 Net-NTLMv1 彩虹表数据集,此举为长期存在的传统认证协议安全问题敲响了新的警钟。这套数据集的公开,意味着利用已知明文攻击来破解 NTLMv1 协议加密哈希的门槛被大幅降低,攻击者甚至可以利用消费级硬件在短时间内完成破解。
过时协议的安全危机
这次发布的根本目的,是向企业传递一个明确的信号:必须立即停止使用 Net-NTLMv1 协议。该协议自 1999 年被发现存在加密缺陷,至少从 2012 年起就被广泛公认为不安全。
尽管安全警告已持续了二十余年,但 Mandiant 的顾问仍然在企业生产环境中发现了该协议的踪影,这暴露出组织层面的惯性是阻碍漏洞修复的主要障碍。在 渗透测试 和 安全评估 中,这类配置疏漏往往是攻击者最易利用的突破口。
漏洞原理与攻击链
漏洞的核心在于 Net-NTLMv1 协议依赖的已知明文攻击(Known-Plaintext Attack, KPA)机制。当攻击者捕获到不含扩展会话安全(ESS)的 Net-NTLMv1 哈希时,如果已知其明文值为固定的 1122334455667788,就能通过加密攻击恢复出密钥材料。这个密钥材料等同于用于认证 Active Directory 域内对象的密码哈希值。
完整的攻击链条通常如下展开:
- 强制认证:攻击者使用 PetitPotam 或 DFSCoerce 等工具,针对域控制器等高权限目标发起强制认证攻击,诱使目标主动与攻击者建立入站连接,从而捕获其 Net-NTLMv1 哈希。

- 哈希预处理:利用
ntlmv1-multi 等工具,将捕获的 Net-NTLMv1 哈希值预处理成 DES 加密组件。
- 彩虹表查表:使用 RainbowCrack 或 RainbowCrack-NG 等工具,加载 Mandiant 公开的彩虹表数据集,快速恢复出 DES 密钥。
- 凭据重构与利用:通过专用工具计算出关键组件,最终重构出完整的 NT 哈希。攻击者利用窃取的凭据,例如恢复域控制器机器账户的哈希,进而实施 DCSync 攻击,从而危害整个 Active Directory 中的任意账户,实现权限的 横向移动。
技术演进与防御建议
彩虹表作为一种时空折衷的密码破解技术,其概念由 Martin Hellman 在 1980 年提出,并于 2003 年由 Philippe Oechslin 完善。2016 年,主流的密码恢复工具 Hashcat 加入了对已知明文 DES 密钥破解的支持,进一步降低了 Net-NTLMv1 被利用的门槛。
Mandiant 此次发布的彩虹表数据集,依托谷歌云的强大计算资源和一线的攻防经验,旨在从规模上消除此类认证攻击的威胁。

攻击者通常使用 Responder 工具,并配合 --lm 和 --disable-ess 参数,将认证质询设置为静态值 1122334455667788,以此来强制目标进行 Net-NTLMv1 协议协商。

企业可以通过监控 Windows 事件日志来检测此类攻击活动。重点关注事件 ID 4624(“账户成功登录”),并检查“认证包”字段中是否出现了“LM”或“NTLMv1”等值。
缓解措施
最根本的缓解措施是在全网范围内彻底禁用 Net-NTLMv1 协议。对于 Windows 系统,应通过本地安全策略或组策略进行配置,将“网络安全:LAN Manager 身份验证级别”设置为“仅发送 NTLMv2 响应”。
然而,需要警惕的是,本地策略设置可能被已经获取管理员权限的攻击者在入侵后进行降级修改。因此,除了强制执行策略外,还必须建立持续的监控和检测机制,及时发现和响应可疑的认证降级行为。
Mandiant 彩虹表的公开发布,标志着关于 Net-NTLMv1 安全性的讨论进入了一个新的阶段。曾经停留在理论层面的学术关切,如今已经变成了触手可及的攻击武器库。这要求所有仍在使用或管理相关 网络系统 的组织立即采取行动,制定并执行全面的修复策略。
参考来源:
更多前沿安全技术动态与深度分析,欢迎访问 云栈社区 进行交流与探讨。
|