Qu’est-ce que le transfert de zone DNS ?
Le transfert de zone DNS, également connu sous le nom de requête DNS de type AXFR, est un processus par lequel un serveur DNS transmet une copie d’une partie de sa base de données à un autre serveur DNS. La partie de la base de données qui est répliquée est appelée zone.
Un transfert de zone utilise le protocole de contrôle de transmission (TCP) et prend la forme d’une transaction client-serveur.
Le client qui demande un transfert de zone peut être un serveur esclave ou un serveur secondaire, demandant des données à un serveur maître ou un serveur primaire.
Quand se produit habituellement un transfert de zone DNS ?
Un transfert de zone se produit habituellement lorsque vous mettez en place un nouveau serveur DNS en tant que serveur DNS secondaire.
Un transfert complet de toutes les informations de la zone aura lieu afin de répliquer les enregistrements déjà existants pour cette zone. C’est un processus qui prend beaucoup de temps et de ressources. Ainsi, les transferts DNS incrémentiels ont été développés.
Dans le transfert incrémentiel, le serveur récupère uniquement les enregistrements de ressources qui ont changé dans une zone afin de rester synchronisé avec le serveur DNS primaire.
Lors de l’utilisation du transfert incrémentiel, l’enregistrement SOA est comparé pour voir si des changements ont été effectués. Si le serveur de nom primaire a un numéro de version SOA plus élevé que le serveur de nom secondaire, alors un transfert de zone sera initié.
Si le numéro de version des enregistrements SOA est le même, un transfert de zone ne sera pas initié.
Lorsque des modifications ont été apportées au fichier de zone sur le serveur de nom primaire et qu’il existe une liste de notification DNS, le serveur de nom primaire notifie immédiatement au serveur de nom secondaire que le fichier de zone a été modifié. Il lui indique alors d’initier un transfert de zone sans attendre l’expiration de l’intervalle de rafraîchissement.
La liste notify est une liste d’adresses IP qui spécifie quels serveurs de noms secondaires sont autorisés à accéder aux informations de zone sur le serveur de noms primaire à des fins de transfert de zone.
Voici un exemple montrant comment effectuer un transfert de zone DNS en utilisant dig:
Commande:
Ici, nsztm1.digi.ninja est le serveur de noms et zonetransfer.me est le nom de domaine.
Ces enregistrements DNS sont expliqués plus en détail ci-dessous.
Enregistrement SOA
Les informations stockées dans une zone DNS commencent par un enregistrement SOA (Start Of Authority).
Cet enregistrement contient des informations sur :
-
le nom du serveur
-
le nom de l’administrateur de la zone
-
la version actuelle de l’enregistrement SOA
-
le nombre de secondes qu’un serveur de noms secondaire doit attendre avant de vérifier toute mise à jour
-
le nombre de secondes à attendre avant de réessayer un transfert de zone qui a échoué
-
le nombre maximal de secondes pendant lesquelles un serveur de noms secondaire peut utiliser des données avant qu’elles ne doivent être soit rafraîchies, soit expirées
-
le nombre de secondes par défaut pour le fichier time-to-live (TTL) des enregistrements de ressources.
.
Ici:
-
zonetransfer.me est le nom du domaine
-
nsztm1.digi.ninja.est le serveur de nom primaire
-
robin.digi.ninja. représente la personne en charge du domaine
-
l’adresse email (échangez le premier . pour un @)
-
2014101601- Le numéro de série SOA actuel pour le domaine
-
172800- nombre de secondes qu’un serveur de noms secondaire doit attendre entre les demandes de changements
-
900- nombre de secondes qu’un serveur de noms primaire doit attendre s’il ne parvient pas à se rafraîchir correctement
-
1209600-. Nombre de secondes pendant lesquelles un serveur de noms secondaire peut prétendre avoir des informations faisant autorité
-
3600- TTL minimum
Enregistrement MX
Un enregistrement Mail eXchange (enregistrement MX) spécifie le serveur de messagerie responsable de l’acceptation des messages électroniques au nom d’un nom de domaine. Ici, la victime utilise le service de messagerie de Google. Il s’agit d’une information utile lors de toute attaque d’ingénierie sociale.
Enregistrement TXT
Un enregistrement texte (TXT) est un type d’enregistrement de ressources dans le système de noms de domaine (DNS) utilisé pour fournir la possibilité d’associer un texte arbitraire à un hôte ou à des noms, comme des informations lisibles par l’homme, un réseau, un centre de données ou d’autres informations comptables.
Les enregistrements TXT peuvent contenir des informations précieuses. À partir de cet enregistrement TXT, nous avons obtenu un identifiant de courriel et un numéro de téléphone.
Enregistrement SRV
Un enregistrement SRV (Service) montre l’emplacement du serveur SIP, identifie un service en montrant le protocole, l’hôte et le port sur lequel il fonctionne.
Cela pointe vers un serveur nommé _sip._tcp.zonetransfer.me écoutant sur le port TCP 5060 pour le protocole d’initiation de session (SIP) et www.zonetransfer.me est l’hôte fournissant le service. La priorité donnée ici est 0, et le poids est 0.
A record
Un record fait correspondre un nom de domaine à son adresse IP correspondante. À partir de l’enregistrement A, nous avons obtenu trois IP de centre de données et trois IP de bureau, ce qui donne un total de 6 cibles.
CNAME
Un enregistrement de nom canonique (CNAME) est utilisé pour mapper un alias d’un nom de domaine à un autre nom de domaine. De là, nous pouvons voir un serveur de test et de mise en scène.
Impact de la vulnérabilité du transfert de zone DNS
Le transfert de zone DNS n’offre aucune authentification. Ainsi, n’importe quel client ou quelqu’un se faisant passer pour un client peut demander à un serveur DNS une copie de la zone entière.
Cela signifie qu’à moins qu’une sorte de protection ne soit introduite, n’importe qui est capable d’obtenir une liste de tous les hôtes pour le domaine particulier, ce qui lui donne beaucoup de vecteurs d’attaque potentiels.
Comment prévenir la vulnérabilité du transfert de zone DNS ?
- Ne permettez un transfert de zone qu’à partir d’IP de confiance. Voici un exemple de la façon de corriger cela dans le serveur DNS BIND.
Naviguez dans /etc/named.conf et ajoutez les éléments suivants :
- Utiliser les Transaction SIGnatures (TSIG) pour les transferts de zone
identifiez les vulnérabilités avant que les pirates ne les exploitent.
.