MDstable
NoteSnippetChecklistPlaybook

Reconnaissance active — Enum sous-domaines & infra

Collecte active d'informations : sous-domaines, IPs, technologies, emails

snippetbeginner 2025-05-10 2 min read
reconsubfinderamasstheHarvesteractivepentest

Enumération de sous-domaines

Subfinder

bash
Variables
{{TARGET_DOMAIN}}
# Enumération simple
subfinder -d {{TARGET_DOMAIN}} -o subdomainstxt
# Avec résolution DNS
subfinder -d {{TARGET_DOMAIN}} -r -o subdomains-resolved.txt
# Avec toutes les sources
subfinder -d {{TARGET_DOMAIN}} -all -o subdomains-all.txt

Amass

bash
Variables
{{TARGET_DOMAIN}}
# Mode passif (pas de bruteforce)
amass enum -passive -d {{TARGET_DOMAIN}} -o amass-passive.txt
# Mode actif
amass enum -active -d {{TARGET_DOMAIN}} -o amass-active.txt
# Intelligence (WHOIS, ASN, etc.)
amass intel -d {{TARGET_DOMAIN}} -whois

Assetfinder

bash
Variables
{{TARGET_DOMAIN}}
assetfinder --subs-only {{TARGET_DOMAIN}} | tee assetfindertxt

Combiné + déduplication

bash
cat subdomainstxt amass-passive.txt assetfindertxt | sort -u > all-subs.txt
wc -l all-subs.txt

Résolution en masse

bash
# massdns
massdns -r /opt/massdns/lists/resolvers.txt -t A -o S all-subs.txt > resolvedtxt
# dnsx
cat all-subs.txt | dnsx -silent -o live-subs.txt

Collecte d'emails et contacts

theHarvester

bash
Variables
{{TARGET_DOMAIN}}
# Recherche emails, sous-domaines, IPs
theHarvester -d {{TARGET_DOMAIN}} -b all -l 500 -f resultshtml
# Sources spécifiques
theHarvester -d {{TARGET_DOMAIN}} -b googlelinkedindnsdumpster

Hunter.io (manuel)

bash
Variables
{{TARGET_DOMAIN}}
{{HUNTER_API_KEY}}
# Via API
curl "https://api.hunter.io/v2/domain-search?domain={{TARGET_DOMAIN}}&api_key={{HUNTER_API_KEY}}" | jq '.data.emails[].value'

Cartographie d'infrastructure

Shodan

bash
Variables
{{TARGET_ORG}}
{{TARGET_IP}}
{{TARGET_DOMAIN}}
# Via CLI
shodan search "org:{{TARGET_ORG}}" --fields ip_strportorg
# Hostnames d'une IP
shodan host {{TARGET_IP}}
# Filtres utiles
shodan search "hostname:{{TARGET_DOMAIN}} port:22"
shodan search "ssl.cert.subject.CN:{{TARGET_DOMAIN}}"

Censys

bash
Variables
{{TARGET_DOMAIN}}
{{TARGET_ORG}}
# Recherche d'hôtes par domaine
censys search "{{TARGET_DOMAIN}}" --index hosts
# ASN
censys search "autonomous_system.name: {{TARGET_ORG}}"

Certificate Transparency (crt.sh)

bash
Variables
{{TARGET_DOMAIN}}
curl -s "https://crt.sh/?q=%25.{{TARGET_DOMAIN}}&output=json" |
jq -r '.[].name_value' | sort -u | grep -v '*'

Technologies et stack

WhatWeb

bash
Variables
{{TARGET}}
whatweb http//{{TARGET}} -a 3 -v

Wappalyzer CLI

bash
Variables
{{TARGET}}
wappalyzer http//{{TARGET}}

Wafw00f (WAF detection)

bash
Variables
{{TARGET}}
wafw00f http//{{TARGET}}

Headers HTTP

bash
Variables
{{TARGET}}
curl -sI http//{{TARGET}} | grep -i "server\|x-powered-by\|x-aspnet"

ASN & plages IP

bash
Variables
{{ASN}}
# BGP.he.net — chercher l'ASN
whois -h whoisradbnet -- '-i origin AS{{ASN}}' | grep "^route:" | awk '{print $2}'
# Via amass
amass intel -asn {{ASN}}
# Convertir ASN en CIDR
nmap --script targets-asn --script-args targets-asn.asn={{ASN}}
💡 Tip —

Commencer par la reconnaissance passive (aucune interaction avec la cible). Passer à l'active seulement après validation du scope et accord écrit.

OPS·BRAIN v1.075 notes · Securitylocal