5353/UDP Multicast DNS (mDNS) and DNS-SD

从零开始学习 AWS 黑客技术,成为专家 htARTE(HackTricks AWS 红队专家)

支持 HackTricks 的其他方式:

基本信息

多播 DNS (mDNS) 在本地网络中实现了类似 DNS 操作,无需传统 DNS 服务器。它在 UDP 端口 5353 上运行,允许设备发现彼此及其服务,通常在各种物联网设备中看到。DNS 服务发现 (DNS-SD) 经常与 mDNS 一起使用,通过标准 DNS 查询帮助识别网络上可用的服务。

PORT     STATE SERVICE
5353/udp open  zeroconf

mDNS操作

在没有标准DNS服务器的环境中,mDNS允许设备通过查询多播地址224.0.0.251(IPv4)或FF02::FB(IPv6)来解析以**.local结尾的域名。mDNS的重要方面包括生存时间(TTL)值表示记录的有效性,以及QU位**区分单播和多播查询。从安全角度来看,mDNS实现必须验证数据包的源地址与本地子网对齐。

DNS-SD功能

DNS-SD通过查询指针记录(PTR)来促进网络服务的发现,这些记录将服务类型映射到它们的实例。服务使用**_<Service>._tcp或_<Service>._udp模式在**.local域内进行标识,从而发现相应的SRV和**TXT记录**,提供详细的服务信息。

网络探索

nmap用法

用于扫描本地网络中mDNS服务的有用命令是:

nmap -Pn -sUC -p5353 [target IP address]

这个命令有助于识别开放的mDNS端口以及它们上面广告的服务。

使用Pholus进行网络枚举

要积极地发送mDNS请求并捕获流量,可以如下使用Pholus工具:

sudo python3 pholus3.py [network interface] -rq -stimeout 10

攻击

利用mDNS探测

一种攻击向量涉及向mDNS探测发送伪造响应,暗示所有潜在名称已被使用,从而阻碍新设备选择唯一名称。这可以通过以下方式执行:

sudo python pholus.py [network interface] -afre -stimeout 1000

这种技术有效地阻止新设备在网络上注册其服务。

总结,了解mDNS和DNS-SD的工作原理对于网络管理和安全至关重要。像nmapPholus这样的工具提供了有关本地网络服务的宝贵见解,同时意识到潜在的漏洞有助于防范攻击。

欺骗/中间人攻击

您可以在此服务上执行的最有趣的攻击是在客户端和真实服务器之间的通信中执行中间人攻击。您可能能够获取敏感文件(中间人攻击打印机通信)甚至凭据(Windows身份验证)。 有关更多信息,请查看:

Spoofing LLMNR, NBT-NS, mDNS/DNS and WPAD and Relay Attacks

参考资料

从零开始学习AWS黑客技术,成为专家 htARTE(HackTricks AWS Red Team Expert)

支持HackTricks的其他方式:

最后更新于