hacktricks/network-services-pentesting/5353-udp-multicast-dns-mdns.md
2024-02-10 13:03:23 +00:00

86 lines
6 KiB
Markdown

# 5353/UDP Multicast DNS (mDNS) e DNS-SD
<details>
<summary><strong>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Altri modi per supportare HackTricks:
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PIANI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo Telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
## **Informazioni di base**
**Multicast DNS (mDNS)** consente operazioni **simili a DNS** all'interno delle reti locali senza la necessità di un server DNS tradizionale. Opera sulla porta **UDP 5353** e consente ai dispositivi di scoprirsi reciprocamente e ai loro servizi, comunemente presenti in vari dispositivi IoT. **DNS Service Discovery (DNS-SD)**, spesso utilizzato insieme a mDNS, aiuta nell'individuazione dei servizi disponibili sulla rete tramite query DNS standard.
```
PORT STATE SERVICE
5353/udp open zeroconf
```
### **Funzionamento di mDNS**
In ambienti senza un server DNS standard, mDNS consente ai dispositivi di risolvere i nomi di dominio che terminano con **.local** interrogando l'indirizzo multicast **224.0.0.251** (IPv4) o **FF02::FB** (IPv6). Aspetti importanti di mDNS includono un valore di **Time-to-Live (TTL)** che indica la validità del record e un bit **QU** che distingue tra query unicast e multicast. Per quanto riguarda la sicurezza, è fondamentale che le implementazioni di mDNS verifichino che l'indirizzo di origine del pacchetto sia allineato con la subnet locale.
### **Funzionamento di DNS-SD**
DNS-SD facilita la scoperta dei servizi di rete interrogando i record di puntatore (PTR) che mappano i tipi di servizio alle loro istanze. I servizi vengono identificati utilizzando un modello **_\<Servizio>.\_tcp o \_\<Servizio>.\_udp** all'interno del dominio **.local**, portando alla scoperta dei record **SRV** e **TXT** corrispondenti che forniscono informazioni dettagliate sul servizio.
### **Esplorazione di rete**
#### **Utilizzo di nmap**
Un comando utile per scansionare la rete locale alla ricerca di servizi mDNS è:
```bash
nmap -Pn -sUC -p5353 [target IP address]
```
Questo comando aiuta a identificare le porte mDNS aperte e i servizi pubblicizzati su di esse.
#### **Enumerazione di rete con Pholus**
Per inviare attivamente richieste mDNS e catturare il traffico, lo strumento **Pholus** può essere utilizzato nel seguente modo:
```bash
sudo python3 pholus3.py [network interface] -rq -stimeout 10
```
## Attacchi
### **Sfruttare il mDNS Probing**
Un vettore di attacco coinvolge l'invio di risposte contraffatte alle sonde mDNS, suggerendo che tutti i nomi potenziali sono già in uso, ostacolando così i nuovi dispositivi nella scelta di un nome univoco. Ciò può essere eseguito utilizzando:
```bash
sudo python pholus.py [network interface] -afre -stimeout 1000
```
Questa tecnica blocca efficacemente i nuovi dispositivi dal registrare i loro servizi sulla rete.
**In sintesi**, comprendere il funzionamento di mDNS e DNS-SD è cruciale per la gestione e la sicurezza della rete. Strumenti come **nmap** e **Pholus** offrono preziose informazioni sui servizi di rete locali, mentre la consapevolezza delle vulnerabilità potenziali aiuta a proteggersi dagli attacchi.
### Spoofing/MitM
L'attacco più interessante che puoi effettuare su questo servizio è eseguire un **MitM** nella **comunicazione tra il client e il server reale**. Potresti essere in grado di ottenere file sensibili (MitM la comunicazione con la stampante) o addirittura credenziali (autenticazione di Windows).\
Per ulteriori informazioni, 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 %}
## Riferimenti
* [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>Impara l'hacking di AWS da zero a eroe con</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
Altri modi per supportare HackTricks:
* Se vuoi vedere la tua **azienda pubblicizzata su HackTricks** o **scaricare HackTricks in PDF** Controlla i [**PACCHETTI DI ABBONAMENTO**](https://github.com/sponsors/carlospolop)!
* Ottieni il [**merchandising ufficiale di PEASS & HackTricks**](https://peass.creator-spring.com)
* Scopri [**The PEASS Family**](https://opensea.io/collection/the-peass-family), la nostra collezione di esclusive [**NFT**](https://opensea.io/collection/the-peass-family)
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Condividi i tuoi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>