Guide sur les problématiques de sécurité de Multicast DNS (mDNS)

Qu'est-ce que multicast DNS (mDNS) ?

Le protocole mDNS est destiné à résoudre les noms d'hôte en adresses IP dans de petits réseaux qui ne possèdent pas de serveur DNS local. Le service mDNS peut être contacté à l'aide de requêtes UDP sur le port 5353.
Le protocole mDNS est publié dans la RFC6762 et implémenté par les services Apple Bonjour et avahi-daemon.


Vulnérabilités:

Si votre service mDNS est exposé à Internet, interroger le service peut permettre à des personnes malveillantes de collecter des informations sur votre serveur (telles que l'adresse MAC du périphérique ou les services s'exécutant sur la machine) qui pourraient être utilisées pour préparer une attaque.

Aussi, puisque mDNS est basé sur UDP, les requêtes mDNS peuvent être exploitées pour effectuer des attaques par amplification (l'attaquant peut falsifier l'adresse IP de sa cible pour la saturer avec les réponses mDNS de votre serveur):
(en) https://www.us-cert.gov/ncas/alerts/TA14-017A

Comment vérifier si votre serveur est vulnérable ?

Utilisez la commande suivante à partir d'une machine distante, en tant que root, pour envoyer une requête au service mDNS de votre serveur:
# nmap -Pn -sU -p5353 --script=dns-service-discovery <IP-du-serveur>

Example de résutat:

PORT STATE SERVICE
5353/udp open zeroconf
| dns-service-discovery:
| 9/tcp workstation
| Address=xx.xx.xx.xx
| 22/tcp udisks-ssh
|_ Address=xx.xx.xx.xx


Si les commandes renvoient un message de "time-out", le service est peut être déjà filtré.


Résolution:

Multicast DNS est conçus pour être accédé depuis un réseau local. Cela signifie que ce n'est généralement pas une bonne idée d'exposer ce service directement sur Internet ou, de façon générale, sur un environnement où des clients non-approuvés peuvent accéder directement au service.

Différentes options sont disponibles pour résoudre ce problème et protéger votre serveur:
- Désactivez le service mDNS (Apple Bonjour ou avahi-daemon) si vous ne l’utilisez pas. Il s’agit de la solution la plus facile et la plus efficace.
- Configurez votre pare-feu pour filtrer les connexions entrantes vers le port UDP/5353 de votre serveur, et n'autorisez que les IP/réseaux de confiance qui doivent contacter votre service mDNS pour y accéder.

Références externes:

https://en.wikipedia.org/wiki/Multicast_DNS
https://tools.ietf.org/html/rfc6762
https://www.akamai.com/us/en/about/our-thinking/threat-advisories/akamai-mdns-reflection-ddos-threat-advisory.jsp

Vous avez d’autres questions ? Envoyer une demande

0 Commentaires

Cet article n'accepte pas de commentaires.
Réalisé par Zendesk