hacktricks/network-services-pentesting/5353-udp-multicast-dns-mdns.md
2024-04-06 18:13:07 +00:00

93 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 5353/UDP Multicast DNS (mDNS) and DNS-SD
<details>
<summary><strong>从零开始学习 AWS 黑客技术,成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTEHackTricks AWS 红队专家)</strong></a><strong></strong></summary>
支持 HackTricks 的其他方式:
* 如果您想看到您的 **公司在 HackTricks 中被广告****下载 HackTricks 的 PDF**,请查看 [**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取 [**官方 PEASS & HackTricks 商品**](https://peass.creator-spring.com)
* 探索 [**PEASS 家族**](https://opensea.io/collection/the-peass-family),我们的独家 [**NFTs**](https://opensea.io/collection/the-peass-family)
* **加入** 💬 [**Discord 群组**](https://discord.gg/hRep4RUj7f) 或 [**电报群组**](https://t.me/peass) 或 **关注** 我们的 **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* 通过向 [**HackTricks**](https://github.com/carlospolop/hacktricks) 和 [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github 仓库提交 PR 来分享您的黑客技巧。
</details>
## **基本信息**
**多播 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服务的有用命令是
```bash
nmap -Pn -sUC -p5353 [target IP address]
```
这个命令有助于识别开放的mDNS端口以及它们上面广告的服务。
#### **使用Pholus进行网络枚举**
要积极地发送mDNS请求并捕获流量可以如下使用**Pholus**工具:
```bash
sudo python3 pholus3.py [network interface] -rq -stimeout 10
```
## 攻击
### **利用mDNS探测**
一种攻击向量涉及向mDNS探测发送伪造响应暗示所有潜在名称已被使用从而阻碍新设备选择唯一名称。这可以通过以下方式执行
```bash
sudo python pholus.py [network interface] -afre -stimeout 1000
```
这种技术有效地阻止新设备在网络上注册其服务。
**总结**了解mDNS和DNS-SD的工作原理对于网络管理和安全至关重要。像**nmap**和**Pholus**这样的工具提供了有关本地网络服务的宝贵见解,同时意识到潜在的漏洞有助于防范攻击。
### 欺骗/中间人攻击
您可以在此服务上执行的最有趣的攻击是在**客户端和真实服务器之间的通信**中执行**中间人攻击**。您可能能够获取敏感文件中间人攻击打印机通信甚至凭据Windows身份验证。\
有关更多信息,请查看:
{% content-ref url="../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md" %}
[spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md](../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md)
{% endcontent-ref %}
## 参考资料
* [Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things](https://books.google.co.uk/books/about/Practical\_IoT\_Hacking.html?id=GbYEEAAAQBAJ\&redir\_esc=y)
<details>
<summary><strong>从零开始学习AWS黑客技术成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTEHackTricks AWS Red Team Expert</strong></a><strong></strong></summary>
支持HackTricks的其他方式
* 如果您想在HackTricks中看到您的**公司广告**或**下载PDF格式的HackTricks**,请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 获取[**官方PEASS & HackTricks周边产品**](https://peass.creator-spring.com)
* 发现[**PEASS家族**](https://opensea.io/collection/the-peass-family),我们的独家[**NFTs**](https://opensea.io/collection/the-peass-family)
* **加入** 💬 [**Discord群**](https://discord.gg/hRep4RUj7f) 或 [**电报群**](https://t.me/peass) 或 **关注**我们的**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* 通过向[**HackTricks**](https://github.com/carlospolop/hacktricks)和[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github仓库提交PR来分享您的黑客技巧。
</details>