Aller au contenu principal

DNSpector

Outil d'énumération et d'analyse DNS pour la reconnaissance.

DNS Recon Python
Voir sur GitHub

Pourquoi DNSpector ?

L'énumération DNS est une étape cruciale en reconnaissance. dig et whois sont puissants mais leur output est verbose et difficile à parser. DNSpector combine ces outils avec une sortie colorée, lisible, et des fonctionnalités d'automatisation.

L'outil ne réinvente pas la roue — il orchestre des utilitaires éprouvés et présente leurs résultats de manière exploitable.

Fonctionnalités

  • Requêtes DNS multiples : A, AAAA, CNAME, MX, NS, TXT, SOA, et 10+ autres types
  • WHOIS intégré : Informations registrar en un flag
  • Énumération de sous-domaines : Découverte passive via sources publiques
  • Zone Transfer Check : Détection de misconfiguration AXFR
  • Sortie colorée : Lecture rapide des résultats
  • Nameserver custom : Requêtes via n'importe quel resolver

Installation

git clone https://github.com/noobosaurus-r3x/DNSpector.git
cd DNSpector
pip install -r requirements.txt

Usage

Syntaxe de base

python3 DNSpector.py [target] [options]

Options principales

Option Description
-r, --records Types de records à requêter (A, MX, TXT, all...)
-n, --nameserver Nameserver/IP custom
-w, --whois Effectuer un WHOIS lookup
-sd, --subdomain Énumération passive de sous-domaines
-zt, --zone-transfer Tester les vulnérabilités Zone Transfer

Exemples

Records A et MX

python3 DNSpector.py example.com -r A MX

Tous les records

python3 DNSpector.py example.com -r all

Recon complète

python3 DNSpector.py example.com -r all -w -sd -zt

Via un nameserver spécifique

python3 DNSpector.py example.com -n 8.8.8.8 -r A MX TXT

Exemple de sortie

$ python3 DNSpector.py target.com -r A MX TXT -w

╔══════════════════════════════════════════════════════════════╗
║                        DNSpector                              ║
║              DNS Enumeration & Analysis Tool                  ║
╚══════════════════════════════════════════════════════════════╝

[*] Target: target.com

━━━━━━━━━━━━━━━━━━━━━ DNS RECORDS ━━━━━━━━━━━━━━━━━━━━━

[A] Records:
    → 104.21.55.123
    → 172.67.182.45

[MX] Records:
    → 10 mail.target.com
    → 20 mail2.target.com

[TXT] Records:
    → "v=spf1 include:_spf.google.com ~all"
    → "google-site-verification=abc123..."

━━━━━━━━━━━━━━━━━━━━━ WHOIS INFO ━━━━━━━━━━━━━━━━━━━━━

Registrar:     Cloudflare, Inc.
Created:       2019-03-15
Expires:       2025-03-15
Name Servers:  ns1.cloudflare.com, ns2.cloudflare.com

Types de records supportés

A AAAA CNAME MX NS TXT SOA PTR SRV CAA DNSKEY SPF

Cas d'usage

Bug Bounty - Reconnaissance

Phase initiale sur un nouveau target. Identifier les mail servers (MX), les services cloud (TXT SPF/DKIM), les CDN (CNAME), et potentiellement des sous-domaines oubliés.

Zone Transfer

Une misconfiguration AXFR peut exposer l'intégralité des records DNS d'un domaine. C'est rare mais quand ça arrive, c'est une mine d'or pour la reconnaissance.

python3 DNSpector.py target.com -zt

[!] Zone Transfer VULNERABLE on ns1.target.com
    → admin.target.com      A    10.0.0.1
    → staging.target.com    A    10.0.0.2
    → vpn.target.com        A    10.0.0.3
    ...

Subdomain Discovery

L'option -sd effectue une énumération passive via des sources publiques (crt.sh, VirusTotal, etc.) — utile pour découvrir des assets oubliés.

Tips

  • Les records TXT contiennent souvent des infos intéressantes : SPF, DKIM, domain verification tokens
  • Comparer les résultats de différents nameservers peut révéler des incohérences
  • Les records CAA indiquent quelles CA peuvent émettre des certs pour le domaine