LLMNR/NBNS 名称解析协议毒化攻击详解(LLMNR/NBT-NS Poisoning and Relay)
LLMNR/NBNS投毒攻击利用Windows系统中的遗留协议漏洞进行内网渗透。当DNS解析失败时,系统会回退使用LLMNR/NBNS协议进行本地名称解析,这些协议缺乏认证机制,允许攻击者伪造响应并诱导受害者发送NTLMv2哈希。攻击者可通过工具监听查询并抢先响应,获取凭证后实施离线破解或中继攻击。防御措施包括禁用LLMNR/NBNS协议、启用SMB签名、使用强密码等。该攻击在内网未修补环境中较为
概念引入
LLMNR(Link-Local Multicast Name Resolution,链路本地多播名称解析)和 NBNS(NetBIOS Name Service,NetBIOS 名称服务)是 Windows 系统中的遗留名称解析协议,主要用于本地网络(同一子网)内主机名的解析。当主名称解析方式(DNS)失败时,Windows 会回退
(fallback)到这些协议。
“毒化”(Poisoning)在内网渗透领域,是一个非常形象的比喻术语,用来描述攻击者向某个系统或协议中注入虚假、有害的信息,从而“污染”正常流程,导致系统做出错误决策或泄露敏感信息。在 LLMNR/NBNS 场景中,“毒化”就是攻击者通过伪造响应,持续污染网络中的名称解析过程,让受害主机误认为攻击者就是目标主机,从而主动送出凭证。
正常工作原理
- Windows 主机尝试访问资源(如
\\fileserver\share或输入错误的主机名)时,先查询 DNS。 - 如果 DNS 无法解析(主机名不存在或拼写错误),系统会:
- 使用 LLMNR(UDP 5355 端口):向多播地址(224.0.0.252 for IPv4)发送查询,询问本地网络上所有主机:“谁是这个主机名?”
- 使用 NBNS(UDP 137 端口):向广播地址发送查询(旧版协议)。
- 如果有合法主机响应,它会返回自己的 IP 地址。
这些协议没有内置认证机制:任何主机都可以响应查询,且响应不经过验证。先响应者胜出(race condition)。
投毒(Poisoning/Spoofing)攻击原理
攻击者(在内网中)利用协议的无认证特性,进行名称解析投毒:
- 受害主机因 DNS 失败而广播/多播 LLMNR/NBNS 查询(常见场景:用户拼错共享文件夹名、访问不存在主机、WPAD proxy 查询等)。
- 攻击者运行工具(如 Responder.py)监听这些查询(UDP 137/5355)。
- 攻击者优先响应查询,声称“我就是你找的主机”,并提供自己的 IP 地址。
- 受害主机相信响应,向攻击者的 IP 发起连接(通常是 SMB、HTTP 等需要 NTLM 认证的服务)。
- 受害主机自动发送 NTLMv2 hash(用户名 + 密码哈希)进行认证。
- 攻击者捕获 hash,后续可:
- 离线破解(用 Hashcat/John,若密码弱)。
- NTLM Relay(中继到其他服务,如 LDAP/SMB,实现横向移动或提权)。




这属于 MITRE ATT&CK 中的 T1557.001: Adversary-in-the-Middle: LLMNR/NBT-NS Poisoning and SMB Relay。
常见触发场景
- 用户输入错误:
\\filesahre(应为 fileshare)。 - WPAD(Web Proxy Auto-Discovery)查询 wpad 主机。
- 浏览器直接搜索或访问不存在资源。
防御措施
- 禁用 LLMNR 和 NBNS(推荐,最有效):
- 通过组策略:Computer Configuration > Administrative Templates > Network > DNS Client > “Turn off multicast name resolution” 设置为 Enabled(禁用 LLMNR)。
- 禁用 NetBIOS over TCP/IP(网络适配器属性 > IPv4 > 高级 > WINS > 禁用 NetBIOS)。
- 启用 SMB Signing(要求签名,防止 relay)。
- 使用强密码(>14 位,复杂)。
- 网络访问控制(NAC),监控异常流量。
此攻击在内网渗透中非常常见,尤其在未修补遗留配置的环境中。如果环境有 DNS 服务器且配置正确,禁用这些协议几乎无影响。
参考文章:https://www.cnblogs.com/haidragon/p/16847713.html
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐

所有评论(0)