mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-25 14:10:41 +00:00
87 lines
5.9 KiB
Markdown
87 lines
5.9 KiB
Markdown
# 5353/UDP Multicast DNS (mDNS) y DNS-SD
|
|
|
|
{% hint style="success" %}
|
|
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
|
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
|
|
|
<details>
|
|
|
|
<summary>Support HackTricks</summary>
|
|
|
|
* 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.
|
|
|
|
</details>
|
|
{% 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 **_\<Service>.\_tcp o \_\<Service>.\_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:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
|
|
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
|
|
|
|
<details>
|
|
|
|
<summary>Support HackTricks</summary>
|
|
|
|
* 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.
|
|
|
|
</details>
|
|
{% endhint %}
|