新型 NatJack 攻击通过操纵 NAT 表劫持 TCP 会话并伪造 DNS

新型 NatJack 攻击通过操纵 NAT 表劫持 TCP 会话并伪造 DNS

导语:安全研究员 Malcolm Stagg 在 Black Hat USA 2026 上披露了一种名为 NatJack 的新型攻击类,通过操纵 NAT 连接状态可劫持活跃 TCP 会话、伪造 DNS 响应、暴露映射端口并耗尽 NAT 表。Windows NAT 和 Linux Netfilter conntrack 均已分配 CVE,建议及时更新并加密内部网络流量。

安全研究员 Malcolm Stagg 披露了一种名为 NatJack 的新型攻击类,可通过操纵网络地址转换(NAT)连接状态来劫持活跃的 TCP 会话、伪造 DNS 响应、暴露映射端口以及耗尽 NAT 表。

该研究在 Black Hat USA 2026 上发表,发现多个独立开发的实现(包括 Windows 和 Linux)都存在受影响的行为。

两个具体实现的缺陷已被分配 CVE 编号:CVE-2026-56181(CVSS 评分:8.3),存在于 Hyper-V 使用的 Windows NAT 中;以及 CVE-2026-63913(CVSS 评分:8.2),存在于 Linux Netfilter conntrack 中。

NatJack 通常要求攻击者对与受害者位于同一 NAT 之后的系统拥有特权访问权限。因此,缓解指南强调应将不受信任的工作负载与共享 NAT 基础设施的可信系统隔离开来。

对于这一更广泛的攻击类,并没有单一的补丁可供修复。组织应应用可用的 Windows 和 Linux 更新,并对内部网络流量进行加密。该研究还建议在适用情况下部署 IP 源防护(IP Source Guard)。

Stagg 通过 SODIUM-24 独立开展的 NatJack 研究,瞄准了众多 NAT 实现中固有的一个假设:位于同一 NAT 之后的各主机通常被认为不会相互操纵连接状态。控制同一 NAT 之后系统的攻击者,根据具体实现的不同,能够操纵属于另一系统的连接跟踪条目。

该研究描述了四种主要攻击路径。第一种可以通过替换 NAT 映射来重定向活动 TCP 连接中的流量。第二种干扰受害者的 DNS 请求,使合法 DNS 响应到达攻击者,从而允许其回传伪造的响应。

原文配图

其他技术则会暴露外部映射端口,或用伪造的流量填充 NAT 连接表,直至合法客户端无法建立新的连接。

Synack 表示,Stagg 针对数十款来自多家厂商的真实网络基础设施产品测试了这些技术,并在受控环境中演示了概念验证利用。

NatJack 网站未发布完整的产品逐一对应矩阵。截至目前,尚未发现 NatJack 技术在野外被利用的公开证据。

对于 Linux,kernel.org CNA 记录显示,经过精心构造的 SYN 数据包后跟随一个带有无效序列号的复位(RST)数据包,可使活动的 Netfilter NAT 条目过早地进入关闭状态,原因是 conntrack 逻辑未能验证其方向。修复的稳定版本包括 5.10.259、5.15.210、6.1.176、6.6.143、6.12.93、6.18.35、7.0.12 和 7.1。

Stagg 表示,内核变更修复了代码缺陷,但只能缓解更广泛的下游欺骗技术,增加了攻击复杂度,并未完全解决问题。

微软的 CNA 记录将该 Windows 问题描述为一项源验证错误,使得从相邻网络发起欺骗攻击成为可能。受影响的版本包括 26100.8875 之前的 Windows 11 24H2、26200.8875 之前的 25H2、28000.2525 之前的 26H1,以及 26100.33158 之前的 Windows Server 2025。

NatJack 还建立在更早的 NAT 状态操纵研究之上。一项 NDSS 2024 的研究展示了通过 NAT 映射操纵实现 TCP 劫持,并发现 67 款受测路由器中有 52 款易受其攻击,该研究产出了 10 个 CVE。


来源信息

来源:The Hacker News

原文链接:https://thehackernews.com/2026/08/new-natjack-attacks-hijack-tcp-sessions.html

作者:info@thehackernews.com (The Hacker News)