hacktricks/src/network-services-pentesting/5353-udp-multicast-dns-mdns.md

62 lines
3.3 KiB
Markdown

# 5353/UDP Multicast DNS (mDNS) i DNS-SD
{{#include ../banners/hacktricks-training.md}}
## **Osnovne informacije**
**Multicast DNS (mDNS)** omogućava **DNS-slične operacije** unutar lokalnih mreža bez potrebe za tradicionalnim DNS serverom. Radi na **UDP portu 5353** i omogućava uređajima da otkriju jedni druge i njihove usluge, što se često vidi kod raznih IoT uređaja. **DNS Service Discovery (DNS-SD)**, koji se često koristi zajedno sa mDNS, pomaže u identifikaciji usluga dostupnih na mreži putem standardnih DNS upita.
```
PORT STATE SERVICE
5353/udp open zeroconf
```
### **Rad mDNS**
U okruženjima bez standardnog DNS servera, mDNS omogućava uređajima da rešavaju imena domena koja se završavaju sa **.local** upitom na multicast adresu **224.0.0.251** (IPv4) ili **FF02::FB** (IPv6). Važni aspekti mDNS uključuju **Time-to-Live (TTL)** vrednost koja označava validnost zapisa i **QU bit** koji razlikuje unicast i multicast upite. Sa aspekta bezbednosti, ključno je da mDNS implementacije verifikuju da se izvorna adresa paketa poklapa sa lokalnom podmrežom.
### **Funkcionisanje DNS-SD**
DNS-SD olakšava otkrivanje mrežnih usluga upitom za pokazivačke zapise (PTR) koji mapiraju tipove usluga na njihove instance. Usluge se identifikuju koristeći **\_\<Service>.\_tcp ili \_\<Service>.\_udp** obrazac unutar **.local** domena, što dovodi do otkrivanja odgovarajućih **SRV** i **TXT zapisa** koji pružaju detaljne informacije o uslugama.
### **Istraživanje Mreže**
#### **nmap Korišćenje**
Korisna komanda za skeniranje lokalne mreže za mDNS usluge je:
```bash
nmap -Pn -sUC -p5353 [target IP address]
```
Ova komanda pomaže u identifikaciji otvorenih mDNS portova i usluga koje se oglašavaju preko njih.
#### **Enumeracija Mreže sa Pholus-om**
Da biste aktivno slali mDNS zahteve i uhvatili saobraćaj, alat **Pholus** se može koristiti na sledeći način:
```bash
sudo python3 pholus3.py [network interface] -rq -stimeout 10
```
## Napadi
### **Iskorišćavanje mDNS Istraživanja**
Vektor napada uključuje slanje lažnih odgovora na mDNS probe, sugerišući da su svi potencijalni nazivi već u upotrebi, čime se otežava novim uređajima da odaberu jedinstveni naziv. Ovo se može izvršiti korišćenjem:
```bash
sudo python pholus.py [network interface] -afre -stimeout 1000
```
Ova tehnika efikasno blokira nove uređaje da registruju svoje usluge na mreži.
**Ukratko**, razumevanje funkcionisanja mDNS i DNS-SD je ključno za upravljanje mrežom i bezbednost. Alati kao što su **nmap** i **Pholus** nude dragocene uvide u lokalne mrežne usluge, dok svest o potencijalnim ranjivostima pomaže u zaštiti od napada.
### Spoofing/MitM
Najzanimljiviji napad koji možete izvesti preko ove usluge je **MitM** u **komunikaciji između klijenta i pravog servera**. Možda ćete moći da dobijete osetljive datoteke (MitM komunikacija sa štampačem) ili čak akreditive (Windows autentifikacija).\
Za više informacija pogledajte:
{{#ref}}
../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md
{{#endref}}
## Reference
- [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)
{{#include ../banners/hacktricks-training.md}}