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

6.1 KiB

5353/UDP Multicast DNS (mDNS) und DNS-SD

{% hint style="success" %} Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks
{% endhint %}

Grundinformationen

Multicast DNS (mDNS) ermöglicht DNS-ähnliche Operationen innerhalb lokaler Netzwerke, ohne einen traditionellen DNS-Server zu benötigen. Es arbeitet auf UDP-Port 5353 und ermöglicht es Geräten, sich gegenseitig und ihre Dienste zu entdecken, was häufig bei verschiedenen IoT-Geräten zu sehen ist. DNS Service Discovery (DNS-SD), das oft zusammen mit mDNS verwendet wird, hilft dabei, Dienste zu identifizieren, die im Netzwerk über standardisierte DNS-Abfragen verfügbar sind.

PORT     STATE SERVICE
5353/udp open  zeroconf

Betrieb von mDNS

In Umgebungen ohne einen standardmäßigen DNS-Server ermöglicht mDNS Geräten, Domainnamen, die auf .local enden, aufzulösen, indem die Multicast-Adresse 224.0.0.251 (IPv4) oder FF02::FB (IPv6) abgefragt wird. Wichtige Aspekte von mDNS umfassen einen Time-to-Live (TTL)-Wert, der die Gültigkeit des Eintrags angibt, und ein QU-Bit, das zwischen Unicast- und Multicast-Abfragen unterscheidet. Sicherheitsmäßig ist es entscheidend, dass mDNS-Implementierungen überprüfen, ob die Quelladresse des Pakets mit dem lokalen Subnetz übereinstimmt.

Funktionsweise von DNS-SD

DNS-SD erleichtert die Entdeckung von Netzwerkdiensten, indem nach Zeigeraufzeichnungen (PTR) gefragt wird, die Diensttypen ihren Instanzen zuordnen. Dienste werden mithilfe eines _<Service>._tcp oder _<Service>._udp-Musters innerhalb der .local-Domain identifiziert, was zur Entdeckung entsprechender SRV- und TXT-Aufzeichnungen führt, die detaillierte Dienstinformationen bereitstellen.

Netzwerkerkundung

nmap-Nutzung

Ein nützlicher Befehl zum Scannen des lokalen Netzwerks nach mDNS-Diensten ist:

nmap -Pn -sUC -p5353 [target IP address]

Dieser Befehl hilft, offene mDNS-Ports und die über sie beworbenen Dienste zu identifizieren.

Netzwerkenumeration mit Pholus

Um aktiv mDNS-Anfragen zu senden und den Datenverkehr zu erfassen, kann das Pholus-Tool wie folgt verwendet werden:

sudo python3 pholus3.py [network interface] -rq -stimeout 10

Angriffe

Ausnutzen von mDNS-Probing

Ein Angriffsvektor besteht darin, gefälschte Antworten auf mDNS-Probes zu senden, die vorschlagen, dass alle potenziellen Namen bereits in Verwendung sind, wodurch neue Geräte daran gehindert werden, einen eindeutigen Namen auszuwählen. Dies kann durchgeführt werden mit:

sudo python pholus.py [network interface] -afre -stimeout 1000

Diese Technik blockiert effektiv neue Geräte daran, ihre Dienste im Netzwerk zu registrieren.

Zusammenfassend ist das Verständnis der Funktionsweise von mDNS und DNS-SD entscheidend für das Netzwerkmanagement und die Sicherheit. Tools wie nmap und Pholus bieten wertvolle Einblicke in lokale Netzwerkdienste, während das Bewusstsein für potenzielle Schwachstellen hilft, sich gegen Angriffe abzusichern.

Spoofing/MitM

Der interessanteste Angriff, den Sie über diesen Dienst durchführen können, ist ein MitM in der Kommunikation zwischen dem Client und dem echten Server. Sie könnten in der Lage sein, sensible Dateien (MitM der Kommunikation mit dem Drucker) oder sogar Anmeldeinformationen (Windows-Authentifizierung) zu erhalten.
Für weitere Informationen siehe:

{% 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 {% endcontent-ref %}

Referenzen

{% hint style="success" %} Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks
{% endhint %}