DNS — Domain Name System

🧭 Introduction

Le Domain Name System (DNS) agit comme le GPS de l'internet, traduisant des noms de domaines lisibles par l'homme (ex. www.example.com) en adresses IP compréhensibles par les machines (ex. 192.0.2.1). Sans DNS, naviguer sur le web reviendrait à devoir mémoriser et utiliser des adresses IP pour chaque site.

⚙️ Comment fonctionne DNS ?

🔄 Processus de résolution DNS

  1. Demande initiale (Query) : Votre navigateur demande l'adresse IP de www.example.com.

  2. DNS Resolver (FAI ou public) : Cherche dans son cache.

  3. Serveur Racine : Oriente vers le serveur TLD (ex. .com).

  4. Serveur TLD : Oriente vers le serveur de noms autoritaire.

  5. Serveur Autoritaire : Fournit l'adresse IP.

  6. Connexion : Le navigateur se connecte à l'adresse IP retournée.

🔁 C'est un véritable relais d'informations entre plusieurs serveurs DNS pour aboutir à une réponse fiable et rapide.

🗂️ Le fichier hosts

  • Fichier local de résolution DNS manuelle.

  • Emplacement :

    • Windows : C:\Windows\System32\drivers\etc\hosts

    • Linux/macOS : /etc/hosts

  • Exemple :

127.0.0.1       localhost
192.168.1.10    dev.local
0.0.0.0         unwanted-site.com

Utilisé pour le développement local, le blocage de sites ou les tests.

🧩 Concepts clés de DNS

Concept
Description
Exemple

Nom de Domaine

Nom lisible d'un site web

www.example.com

Adresse IP

Adresse numérique unique

192.0.2.1

Resolver

Serveur qui fait la résolution

8.8.8.8 (Google DNS)

Serveur Racine

Départ du DNS tree

a.root-servers.net

Serveur TLD

Gère les domaines comme .com, .org

com. via Verisign

Serveur Autoritaire

Détient les enregistrements réels

ns1.example.com

📜 Enregistrements DNS (DNS Records)

Type
Nom complet
Description
Exemple

A

Address Record

Associe un nom à une adresse IPv4

www IN A 192.0.2.1

AAAA

IPv6 Address Record

Associe un nom à une adresse IPv6

www IN AAAA 2001:db8::1

CNAME

Canonical Name Record

Alias d'un autre nom

blog IN CNAME webserver.example.net.

MX

Mail Exchange Record

Définit les serveurs d'emails pour le domaine

example.com IN MX 10 mail.example.com.

NS

Name Server Record

Définit les serveurs DNS autoritaires pour le domaine

example.com IN NS ns1.example.com.

TXT

Text Record

Contient du texte libre (vérification, SPF, etc.)

example.com IN TXT "v=spf1 mx -all"

SOA

Start of Authority

Définit les infos d'administration de la zone

SOA ns1.example.com. admin.example.com.

SRV

Service Record

Définit hôte/port pour des services spécifiques

_sip._udp IN SRV 10 5 5060 sip.example.com

PTR

Pointer Record

Reverse DNS : IP vers nom

1.2.0.192.in-addr.arpa IN PTR www.example.com.

🧠 Pourquoi DNS est utile en Web Recon ?

  • Identifier des actifs : Sous-domaines, serveurs de mail, anciens CNAME, etc.

  • Cartographier l'infrastructure : Trouver les prestataires, serveurs internes, etc.

  • Surveiller les changements : Nouveaux sous-domaines, modifs suspectes (ex: vpn.example.com, 1password=... dans un TXT record).

DNS offre des points d'accès précieux et souvent discrets pour un pentester.

📁 Exemple de zone DNS

$TTL 3600
@       IN SOA   ns1.example.com. admin.example.com. (
                2024060401 ; Serial
                3600       ; Refresh
                900        ; Retry
                604800     ; Expire
                86400 )    ; Minimum TTL
@       IN NS    ns1.example.com.
@       IN NS    ns2.example.com.
@       IN MX 10 mail.example.com.
www     IN A     192.0.2.1
mail    IN A     198.51.100.1
ftp     IN CNAME www.example.com.

Mis à jour