Aujourd’hui, je vais vous parler d’un outil très utile dans le domaine des réseaux et de la sécurité informatique => le fameux « nslookup » !
Le but premier de cet outil est d’interroger les DNS à des fins de reconnaissances et de troubleshooting. Malgré la bonne conscience de certains, sa force obscure réside sur la récolte d’information des empreintes DNS sur les noms de domaines internet.
Je vais partir du principe que vous connaissez les bases sur le protocole DNS (Alias, Type, Zones…) puis cela se corsera au fur et à mesure qu’on avancera dans l’article.
Ici, nous utiliserons un poste Windows pour les requêtes et nous ferons des interrogations sur le nom de domaine « google.fr » mais cela fonctionne aussi sur un poste *nix ;P.
Utilisation Classique (Résolution de DNS de Type A) :
C:\>nslookup google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
Nom : google.fr
Addresses: 2a00:1450:4007:805::2003
172.217.18.195
Nous avons la possibilité de consulter les DNS en 2 modes : OneShot ou Interactif.
La commande précédente est une commande OneShot.
Nous allons maintenant voir le mode interactif :
C:\>nslookup
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
> google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
Nom : google.fr
Addresses: 2a00:1450:4007:805::2003
172.217.18.195
>
Le prompt est encore actif et nous pouvons toujours effectuer d’autres requêtes.
Nous allons mettre les bouchés doubles et combiner les 2 modes et voir les différentes types de requêtes que nous pouvons réaliser avec cet outil géniale.
Rêquete via un autre serveur DNS :
Nous allons intérroger un des serveurs DNS d’OpenDNS de chez Cisco à la place de Google, pour cela, le mode intéractif est le plus adéquate.
Site Officiel : https://www.opendns.com/setupguide/
> server 208.67.222.222
Serveur par defaut : resolver1.opendns.com
Address: 208.67.222.222
> google.fr
Serveur : resolver1.opendns.com
Address: 208.67.222.222
Réponse ne faisant pas autorité :
Nom : google.fr
Addresses: 2a00:1450:4007:805::2003
172.217.18.195
by KasperSky Lab
Énumération des serveurs DNS autoritaire :
Cette méthode permet d’obtenir les informations des DNS autoritaire d’un ou des domaines enregistrés (ici google.fr)
> set type=NS
> google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
google.fr nameserver = ns4.google.com
google.fr nameserver = ns1.google.com
google.fr nameserver = ns2.google.com
google.fr nameserver = ns3.google.com
ns3.google.com internet address = 216.239.36.10
ns2.google.com internet address = 216.239.34.10
ns1.google.com internet address = 216.239.32.10
ns4.google.com internet address = 216.239.38.10
Enumération du serveur DNS SOA (Start of Authority)
Elle permet de capturer des informations officielles sur la zone DNS (Serveur DNS Primaire, Email de l’administrateur, Serial, Timers, Fréquence de renouvellement, Durée de validité de certains éléments… )
> set type=SOA
> google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
google.fr
primary name server = ns1.google.com
responsible mail addr = dns-admin.google.com
serial = 227126874
refresh = 900 (15 mins)
retry = 900 (15 mins)
expire = 1800 (30 mins)
default TTL = 60 (1 min)
Enumération des serveurs de messagerie (MX)
Les serveurs de messagerie associés au domaine…
> set type=MX
> google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
google.fr MX preference = 30, mail exchanger = alt2.aspmx.l.google.com
google.fr MX preference = 20, mail exchanger = alt1.aspmx.l.google.com
google.fr MX preference = 40, mail exchanger = alt3.aspmx.l.google.com
google.fr MX preference = 10, mail exchanger = aspmx.l.google.com
google.fr MX preference = 50, mail exchanger = alt4.aspmx.l.google.com
aspmx.l.google.com internet address = 108.177.127.26
alt1.aspmx.l.google.com internet address = 74.125.24.26
alt3.aspmx.l.google.com internet address = 74.125.195.26
alt2.aspmx.l.google.com internet address = 108.177.125.26
alt4.aspmx.l.google.com internet address = 64.233.179.26
Résolution Inverse (Reverse DNS – PTR)
Si la résolution inverse fonctionne sur le domaine…
> set type=PTR
> 172.217.18.195 => Ici l'adresse IP d'un serveur Google
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
195.18.217.172.in-addr.arpa name = par10s38-in-f3.1e100.net
195.18.217.172.in-addr.arpa name = ham02s14-in-f195.1e100.net
195.18.217.172.in-addr.arpa name = par10s38-in-f3.1e100.net
195.18.217.172.in-addr.arpa name = ham02s14-in-f195.1e100.net
Résolution d’Alias (CNAME)
Si des Alias sont associés au sous-domaine ou domaine lui-même..
> set type=CNAME
> google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
Réponse ne faisant pas autorité :
google.fr
origin = ns1.google.com
mail addr = dns-admin.google.com
serial = 227126874
refresh = 900
retry = 900
expire = 1800
minimum = 60
Le Mode Debug : L’outil ultime
L’outil de debug Ultime sur les entrées des domaines DNS.
Utile pour savoir le TTL des domaines…
> set debug
> google.fr
Serveur par defaut : google-public-dns-a.google.com
Address: 8.8.8.8
------------
Got answer:
HEADER:
opcode = QUERY, id = 2, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
google.fr
AUTHORITY RECORDS:
-> domaine.com
ttl = 3600 (1 hour)
primary name server =
responsible mail addr =
serial = 352796
refresh = 900 (15 mins)
retry = 600 (10 mins)
expire = 86400 (1 day)
default TTL = 900 (15 mins)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 3, rcode = NXDOMAIN
header flags: response, auth. answer, want recursion, recursion avail.
questions = 1, answers = 0, authority records = 1, additional = 0
QUESTIONS:
google.fr, type = AAAA, class = IN
AUTHORITY RECORDS:
-> domaine.com
ttl = 3600 (1 hour)
primary name server = <your_primary_dns>
responsible mail addr = hostmaster.<your_domain>
serial = 352796
refresh = 900 (15 mins)
retry = 600 (10 mins)
expire = 86400 (1 day)
default TTL = 900 (15 mins)
------------
------------
Got answer:
HEADER:
opcode = QUERY, id = 4, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 0, additional = 0
QUESTIONS:
google.fr, type = A, class = IN
ANSWERS:
-> google.fr
internet address = 172.217.18.195
ttl = 300 (5 mins)
------------
Réponse ne faisant pas autorité :
------------
Got answer:
HEADER:
opcode = QUERY, id = 5, rcode = NOERROR
header flags: response, want recursion, recursion avail.
questions = 1, answers = 1, authority records = 0, additional = 0
QUESTIONS:
google.fr, type = AAAA, class = IN
ANSWERS:
-> google.fr
AAAA IPv6 address = 2a00:1450:4007:805::2003
ttl = 300 (5 mins)
------------
Nom : google.fr
Addresses: 2a00:1450:4007:805::2003
172.217.18.195