September 13, 2026
Shodan en CLI
Shodan est un moteur de recherche qui indexe les appareils connectés à Internet plutôt que les pages web . Là où Google suit les liens…

By ATTE-THM
3 min read
Shodan est un moteur de recherche qui indexe les appareils connectés à Internet plutôt que les pages web . Là où Google suit les liens entre sites, Shodan sonde l'espace IPv4 public, capture les banners (réponses des services) et les rend interrogeables . Serveurs, caméras, routeurs, bases de données, systèmes industriels — tout ce qui expose un port est potentiellement visible.
La CLI Shodan transforme cette puissance en outil de ligne de commande scriptable, idéal pour l'audit, la reconnaissance et l'automatisation. Ce guide couvre l'installation, les commandes essentielles et les pièges à éviter.
1. Installation et configuration
Sur les systèmes récents (Kali, Ubuntu), pip système est souvent restreint. La méthode recommandée est pipx, qui isole l'outil dans son propre environnement.
sudo apt update
sudo apt install pipx python3-venv -y
pipx install shodansudo apt update
sudo apt install pipx python3-venv -y
pipx install shodan
Si shodan est déjà présent (comme dans votre cas), pipx le signale mais procède à l'installation ou à la mise à jour :
⚠️ Note: shodan was already on your PATH at /usr/bin/shodan
installed package shodan 1.31.0, installed using Python 3.14.6
These apps are now available
- shodan⚠️ Note: shodan was already on your PATH at /usr/bin/shodan
installed package shodan 1.31.0, installed using Python 3.14.6
These apps are now available
- shodanConfiguration obligatoire : Shodan nécessite une clé API. Créez un compte sur account.shodan.io, récupérez votre clé, puis :
shodan init YOUR_API_KEYshodan init YOUR_API_KEY
Cette clé est stockée localement et utilisée automatiquement par toutes les commandes .
2. Commandes essentielles
Vérifier son compte et ses crédits
shodan infoshodan info
Affiche le plan, les crédits de requête restants et les limites associées .
Rechercher des appareils
shodan host 8.8.8.8
shodan domain example.com
shodan count "country:CG"
shodan count "country:CG port:80"
shodan count "country:CG port:443"
shodan count "country:CG product:nginx"
shodan search --fields ip_str,port,product org:"Target Corp"shodan host 8.8.8.8
shodan domain example.com
shodan count "country:CG"
shodan count "country:CG port:80"
shodan count "country:CG port:443"
shodan count "country:CG product:nginx"
shodan search --fields ip_str,port,product org:"Target Corp"
- Sans filtre avancé, la recherche ne consomme pas de crédits
- Avec filtres (
product:,country:,org:), chaque requête coûte 1 crédit - L'option
--fieldslimite la sortie aux propriétés souhaitées
Compter les résultats sans consommer de crédits
shodan count openssh
shodan count openssh 7shodan count openssh
shodan count openssh 7Idéal pour évaluer rapidement l'ampleur d'une exposition avant d'investir des crédits
Obtenir les détails d'un hôte
shodan host 203.0.xx.xxshodan host 203.0.xx.xxRetourne les ports ouverts, les bannières, les vulnérabilités connues et les métadonnées géographiques
Télécharger des résultats pour analyse locale
shodan download --limit -1 all_results.json.gz "product:mongodb"shodan download --limit -1 all_results.json.gz "product:mongodb"
Le fichier généré est un JSON compressé (.json.gz) où chaque ligne correspond à une bannière
3. Filtres de recherche
Les filtres transforment une recherche vague en requête précise. Voici les plus utiles:
| Catégorie | Filtre | Exemple Bash |
| ------------- | ------------- | ----------------------------------------- |
| Réseau | `ip:` | `shodan count "ip:1.2.3.4"` |
| Réseau | `net:` | `shodan count "net:192.168.0.0/24"` |
| Réseau | `port:` | `shodan count "port:8080"` |
| Réseau | `asn:` | `shodan count "asn:AS15169"` |
| Géographie | `country:` | `shodan count "country:FR"` |
| Géographie | `city:` | `shodan count 'city:"Paris"'` |
| Organisation | `org:` | `shodan count 'org:"Google"'` |
| Organisation | `isp:` | `shodan count 'isp:"Comcast"'` |
| Service | `product:` | `shodan count "product:nginx"` |
| Service | `version:` | `shodan count "version:2.4.49"` |
| Système | `os:` | `shodan count 'os:"Windows Server 2019"'` |
| Web | `http.title:` | `shodan count 'http.title:"Dashboard"'` |
| Web | `http.html:` | `shodan count 'http.html:"login"'` |
| SSL/TLS | `ssl:` | `shodan count 'ssl:"example.com"'` |
| Vulnérabilité | `vuln:` | `shodan count "vuln:CVE-2021-44228"` |
| Vulnérabilité | `has_vuln:` | `shodan count "has_vuln:true"` || Catégorie | Filtre | Exemple Bash |
| ------------- | ------------- | ----------------------------------------- |
| Réseau | `ip:` | `shodan count "ip:1.2.3.4"` |
| Réseau | `net:` | `shodan count "net:192.168.0.0/24"` |
| Réseau | `port:` | `shodan count "port:8080"` |
| Réseau | `asn:` | `shodan count "asn:AS15169"` |
| Géographie | `country:` | `shodan count "country:FR"` |
| Géographie | `city:` | `shodan count 'city:"Paris"'` |
| Organisation | `org:` | `shodan count 'org:"Google"'` |
| Organisation | `isp:` | `shodan count 'isp:"Comcast"'` |
| Service | `product:` | `shodan count "product:nginx"` |
| Service | `version:` | `shodan count "version:2.4.49"` |
| Système | `os:` | `shodan count 'os:"Windows Server 2019"'` |
| Web | `http.title:` | `shodan count 'http.title:"Dashboard"'` |
| Web | `http.html:` | `shodan count 'http.html:"login"'` |
| SSL/TLS | `ssl:` | `shodan count 'ssl:"example.com"'` |
| Vulnérabilité | `vuln:` | `shodan count "vuln:CVE-2021-44228"` |
| Vulnérabilité | `has_vuln:` | `shodan count "has_vuln:true"` |4. Limites et précautions
Données historiques, pas temps réel
Shodan scanne l'espace IPv4 en continu, mais avec des intervalles variables. Pour les ports populaires (80, 443, 22), les données peuvent avoir quelques jours ; pour les ports rares, plusieurs semaines. Ne comptez pas sur Shodan pour vérifier une correction déployée il y a une heure.
Couverture partielle
Shodan ne scanne qu'une liste prédéfinie d'environ 200 ports. Un service déplacé sur un port non standard peut échapper complètement à l'indexation.
Faux positifs et bannières trompeuses
Une bannière est contrôlée par le propriétaire de l'appareil : elle peut être obsolète, modifiée ou usurpée. Les attributions géographiques sont également imparfaites (VPN, proxies, hébergement partagé)
Éthique
Shodan expose des données publiquement accessibles, mais leur utilisation doit rester passive : observez, ne sondez pas, n'interagissez pas avec les appareils découverts. Toute tentative d'accès au-delà de ce que Shodan fournit est illégale.
6. Conclusion
La CLI Shodan est un outil puissant, scriptable et gratuit dans sa version de base. Trois règles pour bien l'utiliser :
- Utilisez
shodan countavant toute recherche filtrée pour évaluer la consommation de crédits. - Téléchargez puis parsez localement (
download+parse) pour des analyses répétées sans requêtes supplémentaires. - Gardez en tête les limites : données historiques, couverture partielle, bannières potentiellement trompeuses.
Pour un audit de surface d'exposition, Shodan est souvent le point de départ le plus rapide — à condition de l'utiliser avec discernement et éthique.