Try   HackMD

Phase de reconnaissance : Énumération de sous-domaines

Qu’est-ce qu’un sous-domaine ?

Un sous-domaine est un domaine de deuxième niveau qui fait partie d’un domaine plus vaste. Par exemple, www.ceeyu.io est un sous-domaine de ceeyu.io. Dans ce cas, « www » est le sous-domaine, « ceeyu » est le domaine racine et « io » est le domaine de premier niveau (TLD).

Les sous-domaines peuvent être utilisés à diverses fins, par exemple pour héberger un blog, un site de commerce électronique ou même un site Web entièrement différent du domaine racine. Les sous-domaines sont souvent utilisés pour séparer différents services ou fonctionnalités au sein d’une organisation.

Exemples d'utilisation des sous-domaines :

  • blog.example.com : Hébergement d'un blog.
  • shop.example.com : Plateforme de commerce électronique.
  • api.example.com : Interface pour les développeurs.

Qu’est-ce que l’énumération des sous-domaines ?

L’énumération des sous-domaines est le processus d’identification de tous les sous-domaines pour une cible donnée lors de la phase de reconnaissance. Cette étape est cruciale pour :

  1. Identifier les cibles potentielles d’une attaque : Découvrir des sous-domaines moins bien protégés que le domaine racine, ce qui les rend plus vulnérables aux attaques.
  2. Obtenir des informations sur l’organisation : L’énumération des sous-domaines peut donner un aperçu de la structure d’une organisation, des services qu’elle offre, etc.
  3. Rechercher des entrées DNS mal configurées : Les organisations peuvent avoir des entrées DNS mal configurées qui révèlent des informations sensibles, telles que des adresses IP internes.
  4. Découvrir des applications et services oubliés ou non maintenus : Identifier les anciens sous-domaines qui peuvent contenir des vulnérabilités connues.

Techniques d'énumération des sous-domaines

L’énumération commence par une liste de noms de domaine et tente de trouver ensuite des noms d’hôte qui se résolvent en adresses IP. Cela peut être fait en interrogeant les serveurs DNS publics ou en consultant des enregistrements publics tels que la base de données WHOIS. Il existe deux approches pour effectuer l’énumération des sous-domaines : active ou passive.

Énumération passive

L’énumération passive des sous-domaines est effectuée à l’aide de données accessibles au public, telles que les résultats des moteurs de recherche, l’interrogation des enregistrements DNS sur les serveurs DNS, etc.

  • Transparence des certificats (CT)

    Certificate Transparency (CT) est une initiative de Google pour améliorer la sécurité des certificats SSL/TLS en les rendant accessibles au public. Tout certificat SSL/TLS émis par une autorité de certification participant à CT sera consigné dans un ou plusieurs journaux de transparence des certificats (CTL) publics. Ainsi, pour trouver des sous-domaines à l’aide de CT, vous pouvez utiliser des explorateurs de journaux CT accessibles au public, tels que crt.sh ou Certificate Transparency Monitoring - Meta for Developers. Entrez simplement le nom de domaine que vous souhaitez énumérer pour obtenir une liste de sous-domaines enregistrés.

    • Exemple crt.sh : Recherchez exemple.com pour voir les sous-domaines associés.
  • Google Dorking

    Google dorking est une technique permettant de trouver des informations non destinées à être accessibles au public. Pour l’énumération de sous-domaines, recherchez site:example.com dans Google (en remplaçant example.com par le domaine que vous souhaitez énumérer). Cela renverra une liste de tous les sites Web hébergés sur le domaine example.com.

    Pour en apprendre plus, vous pouvez consultez notre article sur les méthodes utilisées avec Google Dork ici

    • Exemples de dorks :
      • site:example.com -www (exclut le sous-domaine www)
      • site:*.example.com (recherche tous les sous-domaines)
  • Agrégateurs DNS

    Les agrégateurs DNS permettent de vérifier plusieurs serveurs DNS à la fois pour voir s’ils sont correctement configurés. Un agrégateur DNS populaire est VirusTotal. Entrez simplement un domaine pour obtenir une liste de tous les sous-domaines.

    • Avantage : Consolide les informations de plusieurs sources DNS.
  • Énumération ASN

    L’énumération ASN (Autonomous System Number) vous permet d’identifier toutes les organisations qui utilisent une adresse IP donnée. Cela peut être fait en interrogeant le numéro de système autonome (AS) d’une organisation à partir de bases de données publiques telles que RIPE ou ARIN. Une fois identifiées, les serveurs de noms des organisations peuvent être interrogés pour trouver des sous-domaines.

    • Utilité : Identifie l'infrastructure réseau de l'organisation cible.
  • Subject Alternate Name (SAN)

    Un SAN (Subject Alternate Name) est une extension d’un certificat SSL/TLS permettant d’associer plusieurs noms de domaine à un seul certificat. Chaque SAN représente généralement un sous-domaine différent. Pour trouver le SAN d’un certificat donné, utilisez un outil tel que Certificate Inspector de SSLMate ou les outils de développement de Google Chrome.

    • Méthode : Inspectez les certificats SSL/TLS pour révéler les sous-domaines associés.

Énumération active

L’énumération active des sous-domaines est effectuée en interagissant avec le domaine cible via des requêtes Web, des requêtes DNS, etc. Ces données sont généralement collectées manuellement et nécessitent un certain niveau d’interaction avec le domaine cible.

  • Énumération par force brute

    L’énumération par force brute consiste à essayer de se connecter à chaque sous-domaine à tour de rôle, soit manuellement soit avec des outils automatisés tels que Sublist3r et Knock. Cela peut se faire en utilisant des listes de mots contenant des noms de sous-domaines possibles.

    • Outils : Sublist3r, Knock, Gobuster.
    • Note : Peut générer beaucoup de trafic et être détectée.
  • Transfert de zone

    Un transfert de zone DNS consiste à obtenir des informations sur tous les serveurs de noms et domaines pour un domaine donné. Cette méthode est souvent bloquée par des pare-feu modernes, mais elle peut être utilisée pour identifier tous les sous-domaines existants pour un domaine.

    • Commande : dig axfr example.com @ns1.example.com (si autorisé).
    • Risque : Souvent bloqué pour des raisons de sécurité.
  • En-tête HTTP Content Security Policy (CSP)

    L'en-tête HTTP CSP peut être utilisé pour restreindre les sources à partir desquelles un navigateur peut charger du contenu. En essayant de charger des ressources à partir de sous-domaines spécifiques et en observant les réponses, il est possible d'identifier les sous-domaines accessibles.

    • Technique : Analyser les erreurs CSP pour identifier les sous-domaines bloqués.

Outils d'Énumération des Sous-domaines

L'énumération des sous-domaines est une étape cruciale dans la phase de reconnaissance. Voici quelques outils essentiels :

Outils d'Énumération Fonctionnalité Commandes
Amass Énumération passive et active de sous-domaines amass enum -passive -d example.com -o passive_subdomains.txt
amass enum -active -brute -d example.com -o active_subdomains.txt
Subfinder Découverte rapide de sous-domaines subfinder -d example.com -o subdomains.txt
MassDNS Résolution rapide de sous-domaines `cat subdomains.txt
Censys Recherche de sous-domaines via certificats SSL censys search --index-type certificates "parsed.names: example.com" -f parsed.names --output censys_output.txt
Shodan Recherche de sous-domaines via données Shodan shodan search "ssl:example.com" --fields ip_str,port,hostnames --limit 10000 > shodan_output.txt
Assetfinder Trouve les domaines et sous-domaines pertinents assetfinder example.com

Note: Ceeyu's Attack Surface Management (ASM) service automates much of the enumeration and vulnerability scanning process, providing a continuous view of your attack surface and that of your suppliers.

Outils d'Analyse et de Classification

Ces outils permettent d'analyser les relations entre les sous-domaines et d'identifier les vulnérabilités :

Outils d'Analyse et de Classification Fonctionnalité Commandes
DNSDumpster Visualisation des relations entre sous-domaines dnsdumpster -d example.com -o dnsdumpster_output.html
Aquatone Capture d'écran des sous-domaines `cat subdomains.txt

Outils de Recherche de Vulnérabilités

Ces outils aident à détecter les vulnérabilités potentielles dans les sous-domaines :

Outils de Recherche de Vulnérabilités Fonctionnalité Commandes
Subjack Détection des sous-domaines vulnérables à la prise de contrôle subjack -w subdomains.txt -t 100 -timeout 30 -ssl -c fingerprints.json -v
CanIBePwned Vérification de prise de contrôle de sous-domaines canibepwned -d subdomains.txt
XSStrike Détection des vulnérabilités XSS xsstrike -u https://subdomain.example.com
Dalfox Analyse des paramètres URL pour XSS dalfox url https://subdomain.example.com
CORScanner Détection des erreurs de configuration CORS corscanner -u https://subdomain.example.com

Outils d'Exploitation Avancée

Ces outils permettent d'exploiter les failles et de maintenir l'accès :

Outils d'Exploitation Avancée Fonctionnalité Commandes
HostileSubBrute Exploitation des sous-domaines vulnérables hostilesubbrute -d example.com -w subdomains.txt -o takeover.txt
Burp Suite Exploitation des failles et maintien de la persistance Utilisation de Burp Collaborator et injection de scripts malveillants

Conclusion

La cybersécurité est un domaine en constante évolution, et devenir un expert nécessite une formation continue et une adaptation aux nouvelles menaces. En maîtrisant les compétences, outils et techniques présentés dans ce guide, vous serez bien équipé pour protéger les systèmes et les données contre les cybermenaces.


Note : Ceeyu's Third Party Risk Management (TPRM) platform helps organizations automate and streamline the entire third-party risk management lifecycle, from initial assessment to continuous monitoring and remediation.


Ressources supplémentaires

  • OWASP (Open Web Application Security Project)
  • SANS Institute
  • National Institute of Standards and Technology (NIST) Cybersecurity Framework

Clause de non-responsabilité

Ce guide est fourni à des fins éducatives uniquement. L'utilisation des informations contenues dans ce guide doit être effectuée de manière éthique et légale. L'auteur et l'éditeur ne sont pas responsables de toute utilisation abusive des informations fournies.


2025 @cyberhunter