Cartographier des assets OSINT en 60 minutes chrono
La cartographie d'assets OSINT identifie sous-domaines, IPs et services exposés d'une cible sans interaction directe. Une chaîne Amass + Shodan + httpx produit un inventaire exploitable en 45 minutes. 91% des assets publics sont découverts dans ce window ; les 9% restants requièrent du bruteforce subdomain ou de l'analyse JS.
Quelle commande pour un enum subdomain passif fiable ?
Utilisez Amass en mode passif pour éviter les alertes côté cible. Coupez les sources payantes : CRT.sh, AlienVault, CommonCrawl suffisent pour 80% de la couverture.
$ amass enum -passive -d target.com -src -timeout 30 | grep -v '^[\[\*]' | awk '{print $2}' | sort -u> api.target.com> dev.target.com> staging.target.com
Le flag -src taggue l'origine de chaque subdomain. Crucial pour scorer la confiance plus tard. Un timeout à 30s évite les hangs sur les APIs lentes. Sur une cible moyenne (50-200 subs), l'exécution prend 8-12 minutes.
Comment corréler subs découverts avec des données Shodan ?
Pipez la liste de subdomains dans Shodan CLI pour enrichir avec IP, ports, org, vulns connues. Utilisez --fields pour un output CSV-ready.
$ cat subs.txt | xargs -P20 -I{} shodan host {} --fields ip,port,org,vulns 2>/dev/null | grep -v '^Host:'> 104.21.45.12,443,Cloudflare Inc,CVE-2024-3211> 172.67.189.3,80,Cloudflare Inc,none
-P20 parallélise 20 requêtes simultanées. Restez sous le rate-limit gratuit (1 req/s) ou utilisez une API key tier. Shodan retourne uniquement les assets déjà indexés — pas de scan actif depuis votre IP.
Quel outil pour fingerprinter les services web rapidement ?
httpx scanne les URLs découvertes, extrait les titres, status codes, tech stacks via Wappalyzer. Combine avec -sc pour filtrer les 200/301/302 uniquement.
$ cat subs.txt | sed 's/^/https:\/\//' | httpx -sc -title -tech-detect -silent -timeout 10> https://api.target.com [200] [JSON API] [Express, Node.js]> https://dev.target.com [301] [Redirect] [Nginx 1.24]
Le flag -tech-detect identifie frameworks, CMS, serveurs. Crucial pour prioriser les cibles : un WordPress non patché > un static S3 bucket. httpx traite ~50 URLs/minute en single-thread.
Comment exporter l'inventaire pour analyse post-recon ?
Normalisez tous les outputs en JSON Lines pour ingestion DuckDB ou SQLite. Ajoutez un timestamp et un recon_session_id pour tracer l'origine.
$ amass enum -passive -d target.com -json lines.jsonl$ jq -c '{asset: .name, source: "amass", ts: now, confidence: 0.8}' lines.jsonl > enriched.jsonl
DuckDB ingère 10k lignes JSONL en <500ms. Une requête simple agrège par IP, compte les ports exposés, flaggue les assets sans HTTPS.
SELECT ip, COUNT(DISTINCT port) AS exposed_ports, SUM(CASE WHEN port=443 THEN 0 ELSE 1 END) AS http_onlyFROM assets GROUP BY ip HAVING exposed_ports > 3;
FAQ
Q: Amass peut-il bruteforcer des subdomains en passif ?
Non. Le bruteforce (-brute) est actif et génère du trafic DNS direct. En mode -passive, Amass interroge uniquement des sources tierces publiques.
Q: Shodan retourne-t-il des assets récents ?
Shodan indexe en continu mais avec un délai de 24-72h pour les nouveaux assets. Pour du temps réel, coupler avec Censys ou BinaryEdge.
Q: Comment éviter les faux positifs sur les CDNs ?
Filtrez les IPs Cloudflare/Akamai via leur ASN. Un asset derrière CDN nécessite une résolution DNS supplémentaire pour atteindre l'origin IP.
Q: httpx gère-t-il les JavaScript-heavy apps ?
Non. httpx ne rend pas le JS. Pour les SPAs, utilisez Playwright ou Puppeteer en headless — mais cela ralentit le scan de 10x.
Q: Quel TTL pour les données de recon OSINT ?
48h maximum. Les assets publics changent vite : subdomains ajoutés, ports fermés, certs renewés. Rejouez le pipeline toutes les 24h pour maintenance.
Méta article
$ cat /meta/article.txt
> author: th1b4ut
> published: 2026-05-17
> category: OSINT
> series: —
> tags: asset-mapping, reconnaissance, shodan, amass, fingerprinting
> license: —