> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/fr/reconnaissance/subdomains.md).

# Sous-domaines

L’énumération des sous-domaines élargit la surface d’attaque de la cible en découvrant des hôtes publics, des enregistrements DNS, des hôtes virtuels, des entrées de transparence des certificats et des infrastructures indexées.

{% hint style="info" %}
Il existe diverses techniques pour découvrir les sous-domaines associés à un site web. Ces techniques peuvent être réalisées à l’aide d’outils en ligne ou directement depuis la console, et varient selon les objectifs et les ressources disponibles. Voici plusieurs outils que vous pouvez utiliser pour cette tâche, avec des exemples de commandes détaillés.
{% endhint %}

## Gobuster :

> Gobuster est un outil très populaire pour découvrir rapidement des sous-domaines en effectuant des requêtes DNS sur un site web. Il utilise une liste de mots pour tester différentes combinaisons de sous-domaines. Voici un exemple de son utilisation en ligne de commande :

```bash
gobuster vhost -u https://website.com --append-domain -w /usr/share/SecLists/Discovery/DNS/subdomains-top1million-110000.txt -t 100
```

* **-u** : Spécifie l’URL du site web cible.
* **-w** : Définit le chemin du fichier de mots à utiliser pour tester les sous-domaines.
* **-t** : Définit le nombre de threads (dans ce cas, 100), ce qui augmente la vitesse de recherche.
* /| grep -v "403" : ignore les réponses HTTP 403.

<figure><img src="/files/c9af49e940ff631ac3a7d197642868af75d9ac1a" alt=""><figcaption></figcaption></figure>

## Wfuzz :

> Wfuzz est un autre outil de fuzzing qui vous permet de tester différents sous-domaines en exploitant les réponses HTTP. Pour rechercher des sous-domaines, utilisez la commande suivante :

```bash
wfuzz -c -t 100 -w /usr/share/SecLists/Discovery/DNS/subdomains-top1million-5000.txt -H "Host: FUZZ.website.com" https://website.com
```

* **-c** : active le mode couleur pour une meilleure lisibilité des résultats.
* **-t 20** : définit le nombre de threads simultanés (ici, 20) afin d’accélérer le processus.
* **-H "Host: FUZZ.website.com"** : remplacez "FUZZ" par chaque valeur de la liste afin de tester les sous-domaines possibles.
* **--hc=404** : ignore les réponses HTTP 404.

<figure><img src="/files/9228b671df98160078dc996a9c9980e752eb227b" alt=""><figcaption></figcaption></figure>

## **Sublist3r**

> Sublist3r est un outil Python conçu pour énumérer les sous-domaines d’un site web à l’aide d’OSINT. Il utilise de nombreux moteurs de recherche tels que Google, Yahoo, Bing, Baidu et Ask, ainsi que d’autres sources comme Netcraft, Virustotal, ThreatCrowd, DNSdumpster et ReverseDNS1.

* **Sublist3r** : Outil pour énumérer les sous-domaines, par exemple :/ `sublist3r -d website.com`

<figure><img src="/files/537f67855a6d0697e67d5448af5bd2a83af1d44d" alt="" width="518"><figcaption></figcaption></figure>

## Google Dorks :

> Les Google Dorks sont des requêtes spéciales qui vous permettent d’utiliser Google pour trouver des informations spécifiques. Pour découvrir les sous-domaines d’un site web, vous pouvez utiliser la requête suivante :

```makefile
site:*.website.com
```

Cette commande affichera tous les sous-domaines indexés de **website.com** en utilisant l’index de Google. Cette technique est particulièrement utile pour obtenir rapidement une liste de sous-domaines accessibles publiquement.

<figure><img src="/files/e45330a75961bdcaf76b2922f54f0cfcb872f0e8" alt=""><figcaption></figcaption></figure>

## DNSDumpster :

> [DNSDumpster ](https://dnsdumpster.com/)est un outil en ligne gratuit utilisé pour collecter des informations sur le système de noms de domaine (DNS) d’un site web. Il est particulièrement utile en test d’intrusion (pentesting) pour obtenir des informations sur l’infrastructure réseau d’une organisation. Avec DNSDumpster, vous pouvez accéder aux détails des enregistrements DNS publics d’un domaine et découvrir des composants clés de l’infrastructure tels que :

* Les serveurs.
* Les sous-domaines.
* Les adresses IP associées.
* D’autres services réseau.

<figure><img src="/files/ae75b6d89549e483772994ebd39ebc9c71b999f8" alt=""><figcaption></figcaption></figure>

## Énumération passive des domaines

Utilisez d’abord des sources passives pour collecter des sous-domaines candidats sans toucher directement à l’infrastructure cible. Remplacez `target.com` par le domaine autorisé.

```bash
export TARGET="target.com"
```

### Certificate Transparency

Interrogez `crt.sh` et examinez la sortie JSON brute :

```bash
curl -s "https://crt.sh/?q=${TARGET}&output=json" | jq .
```

Extrayez les noms d’hôte uniques à partir des résultats de transparence des certificats :

```bash
curl -s "https://crt.sh/?q=${TARGET}&output=json" \
  | jq -r '.[] | .name_value, .common_name' \
  | sed 's/\*\.//g' \
  | sort -u
```

### Project Sonar

Collectez les sous-domaines, les TLD associés et les résultats DNS inversé à partir d’ensembles de données publics de type Project Sonar :

```bash
curl -s "https://sonar.omnisint.io/subdomains/${TARGET}" | jq -r '.[]' | sort -u
curl -s "https://sonar.omnisint.io/tlds/${TARGET}" | jq -r '.[]' | sort -u
curl -s "https://sonar.omnisint.io/all/${TARGET}" | jq -r '.[]' | sort -u
```

Recherche DNS inversée pour une IP ou une plage CIDR :

```bash
curl -s "https://sonar.omnisint.io/reverse/192.0.2.10" | jq -r '.[]' | sort -u
curl -s "https://sonar.omnisint.io/reverse/192.0.2.0/24" | jq -r '.[]' | sort -u
```

### Collecte multi-source

Exécutez `theHarvester` sur plusieurs sources configurées :

```bash
while read -r source; do
  theHarvester -d "${TARGET}" -b "$source" -f "${source}-${TARGET}"
done < sources.txt
```

### Résoudre les sous-domaines en IP

Convertissez les sous-domaines confirmés en une liste IP unique :

```bash
while read -r subdomain; do
  host "$subdomain" | awk '/has address/ {print $4}'
done < subdomains.txt | sort -u > ip-addresses.txt
```

### Enrichir les IP avec Shodan

Utilisez Shodan pour examiner les services exposés pour chaque adresse IP résolue :

```bash
while read -r ip; do
  shodan host "$ip"
done < ip-addresses.txt
```

## Ressources OSINT supplémentaires

Phonebook et d'autres ressources OSINT publiques sont centralisées dans [Recherche sur les personnes et les fuites de données](/fr/hacking-tools/osint/people-and-breach-research.md). Les ressources d'infrastructure de site web, Shodan et d'URL archivées sont centralisées dans [Sites Web et infrastructure](/fr/hacking-tools/osint/websites-and-infrastructure.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/fr/reconnaissance/subdomains.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
