# 5353/UDP Multicast DNS (mDNS) та DNS-SD
{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}
## **Основна інформація**
**Multicast DNS (mDNS)** дозволяє виконувати **операції, подібні до DNS**, у локальних мережах без необхідності в традиційному DNS-сервері. Він працює на **UDP порту 5353** і дозволяє пристроям виявляти одне одного та свої послуги, що часто спостерігається в різних IoT-пристроях. **DNS Service Discovery (DNS-SD)**, який часто використовується разом з mDNS, допомагає в ідентифікації послуг, доступних у мережі, через стандартні DNS-запити.
```
PORT STATE SERVICE
5353/udp open zeroconf
```
### **Операція mDNS**
У середовищах без стандартного DNS-сервера mDNS дозволяє пристроям розв'язувати доменні імена, що закінчуються на **.local**, запитуючи мультикаст-адресу **224.0.0.251** (IPv4) або **FF02::FB** (IPv6). Важливими аспектами mDNS є значення **Time-to-Live (TTL)**, що вказує на дійсність запису, та **QU bit**, що розрізняє уніicast та мультикаст запити. З точки зору безпеки, важливо, щоб реалізації mDNS перевіряли, що адреса джерела пакета відповідає локальній підмережі.
### **Функціонування DNS-SD**
DNS-SD полегшує виявлення мережевих сервісів, запитуючи записи вказівників (PTR), які відображають типи сервісів на їхні екземпляри. Сервіси ідентифікуються за допомогою шаблону **_\.\_tcp або \_\.\_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**, пропонують цінну інформацію про локальні мережеві послуги, тоді як усвідомлення потенційних вразливостей допомагає захиститися від атак.
### Spoofing/MitM
Найцікавіша атака, яку ви можете виконати через цю службу, - це виконати **MitM** у **зв'язку між клієнтом і реальним сервером**. Ви можете отримати чутливі файли (MitM зв'язок з принтером) або навіть облікові дані (автентифікація 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 %}
## References
* [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)
{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}