# 5353/UDP Multicast DNS (mDNS) y 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 %}
## **Informaci贸n B谩sica**
**Multicast DNS (mDNS)** permite **operaciones similares a DNS** dentro de redes locales sin necesidad de un servidor DNS tradicional. Funciona en **el puerto UDP 5353** y permite que los dispositivos se descubran entre s铆 y sus servicios, com煤nmente visto en varios dispositivos IoT. **DNS Service Discovery (DNS-SD)**, a menudo utilizado junto con mDNS, ayuda a identificar los servicios disponibles en la red a trav茅s de consultas DNS est谩ndar.
```
PORT STATE SERVICE
5353/udp open zeroconf
```
### **Operaci贸n de mDNS**
En entornos sin un servidor DNS est谩ndar, mDNS permite a los dispositivos resolver nombres de dominio que terminan en **.local** consultando la direcci贸n de multidifusi贸n **224.0.0.251** (IPv4) o **FF02::FB** (IPv6). Aspectos importantes de mDNS incluyen un valor de **Tiempo de Vida (TTL)** que indica la validez del registro y un **bit QU** que distingue entre consultas unicast y multicast. Desde el punto de vista de la seguridad, es crucial que las implementaciones de mDNS verifiquen que la direcci贸n de origen del paquete se alinee con la subred local.
### **Funcionamiento de DNS-SD**
DNS-SD facilita el descubrimiento de servicios de red consultando registros de puntero (PTR) que mapean tipos de servicio a sus instancias. Los servicios se identifican utilizando un patr贸n **_\.\_tcp o \_\.\_udp** dentro del dominio **.local**, lo que lleva al descubrimiento de los correspondientes **registros SRV** y **TXT** que proporcionan informaci贸n detallada sobre el servicio.
### **Exploraci贸n de Red**
#### **Uso de nmap**
Un comando 煤til para escanear la red local en busca de servicios mDNS es:
```bash
nmap -Pn -sUC -p5353 [target IP address]
```
Este comando ayuda a identificar puertos mDNS abiertos y los servicios anunciados a trav茅s de ellos.
#### **Enumeraci贸n de Red con Pholus**
Para enviar activamente solicitudes mDNS y capturar tr谩fico, se puede utilizar la herramienta **Pholus** de la siguiente manera:
```bash
sudo python3 pholus3.py [network interface] -rq -stimeout 10
```
## Attacks
### **Exploiting mDNS Probing**
Un vector de ataque implica enviar respuestas falsificadas a las sondas mDNS, sugiriendo que todos los nombres potenciales ya est谩n en uso, obstaculizando as铆 que nuevos dispositivos seleccionen un nombre 煤nico. Esto se puede ejecutar utilizando:
```bash
sudo python pholus.py [network interface] -afre -stimeout 1000
```
Esta t茅cnica bloquea efectivamente que nuevos dispositivos registren sus servicios en la red.
**En resumen**, entender el funcionamiento de mDNS y DNS-SD es crucial para la gesti贸n y seguridad de la red. Herramientas como **nmap** y **Pholus** ofrecen informaci贸n valiosa sobre los servicios de la red local, mientras que la conciencia de las vulnerabilidades potenciales ayuda a protegerse contra ataques.
### Spoofing/MitM
El ataque m谩s interesante que puedes realizar sobre este servicio es llevar a cabo un **MitM** en la **comunicaci贸n entre el cliente y el servidor real**. Podr铆as obtener archivos sensibles (MitM la comunicaci贸n con la impresora) o incluso credenciales (autenticaci贸n de Windows).\
Para m谩s informaci贸n consulta:
{% 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 %}
## Referencias
* [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 %}