禁止 LLMNR 流量

  • ~1.54K 字
  1. 1. 禁止 LLMNR 出站流量(防止本机发起查询)
  2. 2. 禁止 LLMNR 入站流量(防止响应他人的查询)
  3. 3. 彻底禁用的建议
  4. 4. 如何查看规则?

LLMNR (Link-Local Multicast Name Resolution) 是一种用于在局域网中解析主机名到IP地址的协议。它通常用于替代基于DNS的主机名解析,特别是在没有DNS服务器或者DNS服务器不可用的情况下。

LLMNR(Link-Local Multicast Name Resolution)虽然是一个有用的协议,但在安全性方面也存在一些公开的漏洞和安全风险,主要集中在以下几个方面:

1.中间人攻击:

  • LLMNR使用UDP协议进行通信,并且消息未加密,因此容易受到中间人攻击的影响。攻击者可以在局域网内截取LLMNR消息,并篡改其中的内容,例如向客户端发送虚假的响应,导致客户端与攻击者控制的恶意服务进行通信。

2.信息泄露:

  • LLMNR消息通常包含设备的主机名等信息,这可能导致信息泄露问题。攻击者可以通过监听LLMNR消息获取到设备的主机名,进而对网络进行侦察或识别特定设备。

3.拒绝服务攻击(DoS攻击):

  • 攻击者可以发送大量的伪造LLMNR查询请求,从而占用网络带宽或消耗目标设备的处理能力,导致服务不可用或网络延迟增加。

4.缓存投毒:

  • 在某些情况下,LLMNR响应可能被缓存到设备中,攻击者可以发送虚假的LLMNR响应以缓存投毒的方式影响设备对特定主机名的解析,从而引导设备与攻击者控制的恶意服务通信。

5.安全配置不当:

  • 一些设备可能默认启用LLMNR而没有提供关闭选项,这可能增加了安全风险,特别是在需要高度安全性的环境中。

为了减少这些安全风险,建议在企业网络中,特别是需要高度安全性的场所,考虑禁用或限制LLMNR的使用,并采取其他更安全的名字解析和服务发现机制,如DNS-SD(DNS Service Discovery)和mDNS(Multicast DNS)。

要禁用 LLMNR (Link-Local Multicast Name Resolution) 流量,最彻底的方法是在防火墙上同时封锁其使用的特定端口 UDP 5355 以及多播地址 224.0.0.252。

在管理员权限的 CMD 终端中,请执行以下命令:

禁止 LLMNR 出站流量(防止本机发起查询)

1
netsh advfirewall firewall add rule name="禁止LLMNR出站" dir=out action=block protocol=UDP remoteport=5355 remoteip=224.0.0.252

禁止 LLMNR 入站流量(防止响应他人的查询)

1
netsh advfirewall firewall add rule name="禁止LLMNR入站" dir=in action=block protocol=UDP localport=5355

彻底禁用的建议

虽然防火墙可以拦截流量,但在 Windows 系统层彻底关闭该功能是更“优雅”的做法。如果你有权限修改注册表,可以在 CMD 中直接执行以下命令:

1
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" /v "EnableMulticast" /t REG_DWORD /d 0 /f

执行此命令后需重启电脑生效,这会从系统底层直接停止发送 LLMNR 包。

如何查看规则?

1
netsh advfirewall firewall show rule name="禁止LLMNR出站"
分享
分享提示信息