Alors que Google et les autres moteurs de recherche n'indexent que le Web, le moteur de recherche Shodan répertorie à peu près tout ce qui est relié à Internet : caméras Web, installations de traitement de l'eau, yachts, appareils médicaux, feux de circulation, éoliennes, lecteurs de plaques d'immatriculation, téléviseurs intelligents, réfrigérateurs. Aucun périphérique connecté au Net (dont un certain nombre ne devrait pas l'être) n’échappe à Shodan. La meilleure façon de comprendre ce que fait Shodan est de lire le livre du fondateur John Matherly sur le sujet, dans lequel il donne l'algorithme de base.
C’est court et concis :
1. Générer une adresse IPv4 aléatoire
2. Générer un port aléatoire pour effectuer un test à partir de la liste des ports que Shodan comprend.
3. Vérifier l'adresse IPv4 aléatoire sur le port aléatoire et saisir une bannière.
4. Goto 1
Et voilà, c’est tout ce qu’il faut faire pour tout trouver, tout indexer, tout consulter. Et cela s’appelle Shodan.
Zoom sur le fonctionnent de Shodan
Les services fonctionnant sur des ports ouverts s'annoncent, bien sûr, avec des bannières. Une bannière déclare publiquement à l'ensemble de l'Internet quel service il offre et comment interagir avec lui. Shodan fournit un exemple de bannière FTP : Serveur FTP 220 kcg.cz (Version 6.00LS) prêt.
Si Shodan n'indexe pas le contenu Web, il interroge les ports 80 et 443. Voici la bannière https du site CSOonline :
$ curl -I https://www.csoonline.com
HTTP/2 200
server : Apache-Coyote/1.1
x-mod-pagespeed : 1.12.34.34.2-0
content-type : text/html;charset=UTF-8
via : 1.1 varnish
accept-ranges : bytes
date : Fri, 1 June 2018 14:16:16:18 GMT
via : 1.1 varnish
age : 0
x-served-by : cache-sjc3135-SJC, cache-ewr18125-EWR
x-cache : HIT, MISS
x-cache-hits : 2, 0
x-timer : S15272525777779.808892,VS0,VS0,VE70
vary : Accept- Encoding.Cookie
x-via-fastly : Verdad
content-length : 72361
D'autres services sur d'autres ports livrent des informations spécifiques aux services. Cela ne garantit pas que la bannière publiée est vraie ou authentique. Mais c'est le plus souvent le cas. Et en tout état de cause, la publication d'une bannière délibérément trompeuse repose sur le principe de la sécurité par l'obscurité. Certaines entreprises empêchent Shodan de se faufiler dans leur réseau, et Shodan respecte ces requêtes. Quoi qu’il en soit, les attaquants n'ont pas besoin de Shodan pour repérer les périphériques vulnérables connectés à un réseau. Le blocage de Shodan peut éviter temporairement des ennuis à l’entreprise, mais il est peu probable que cela améliore son niveau de sécurité.
Il faut comprendre que Shodan fait peur. Le moteur de recherche terrifie les novices en technologie qui ne comprennent pas comment fonctionne Internet. En 2013, CNN avait qualifié Shodan de « moteur de recherche le plus effrayant de l’Internet ». Certains imaginent que l’outil permet aux pirates de connaître la localisation de toutes les centrales électriques et de mener des attaques contre ces sites. Cette réaction de peur est typique des personnes ignorantes. Sauf qu’il n’en est rien. Les attaquants qui veulent faire de vrais dégâts n'ont pas besoin de Shodan pour trouver leurs cibles. C'est à cela que servent les botnets exécutant zmap. La véritable valeur de Shodan réside dans le fait qu'il aide les responsables de la sécurité à gagner en visibilité sur leurs propres réseaux. On ne peut mettre en place une défense efficace si on ne sait pas ce qu’il faut défendre, et c’est aussi valable au niveau de l'entreprise qu'au niveau de la société dans son ensemble. Globalement, dans le cybermonde interconnecté et incertain dans lequel nous vivons aujourd’hui, Shodan donne plus de visibilité.
Faire de Shodan un outil défensif
De façon générale, les entreprises actuelles sont plus exposées à Internet qu'elles ne le voudraient. Déjà, les salariés connectent de multiples périphériques au réseau pour travailler. Toute cette informatique de l'ombre offre une surface d'attaque de plus en plus vaste et plus difficile à gérer. Shodan facilite la recherche d'un sous-réseau ou d'un domaine pour les périphériques connectés, les ports ouverts, les identifiants par défaut et même les vulnérabilités connues. En réalité, Shodan offre un bon aperçu de ce que les attaquants peuvent voir et permet de bloquer les entrées ouvertes. Autant le faire aussi avant que les pirates ne passent à l’action ! De nombreux périphériques livrent publiquement leurs mots de passe par défaut dans leur bannière.
Par exemple, de nombreux périphériques Cisco annoncent un nom d'utilisateur/mot de passe par défaut « cisco/cisco ». Shodan permet de repérer de tels dispositifs sur un réseau. L’outil permet également de rechercher des périphériques vulnérables à des exploits spécifiques, comme Heartbleed. Shodan n’aide pas seulement les responsables de la sécurité à identifier leurs dispositifs à risques, il peut faciliter aussi la tâche des testeurs d'intrusion pendant la phase de collecte d'informations. En effet, l’outil est plus rapide et plus furtif que le peu discret Nmaping généralement utilisé pour cartographier le sous-réseau d’un client. Les abonnés à la version payante de Shodan ont même accès à l'API et peuvent créer des alertes quand de nouveaux périphériques apparaissent sur le(s) sous-réseau(s) qu'ils veulent surveiller - un moyen bon marché et efficace de garder un œil sur les périphériques que les salariés connectent à Internet.
Cesser de publier n’importe quoi sur le Net
Mais, la qualité la plus remarquable de Shodan est peut être de faire prendre conscience à tous du nombre important d'infrastructures critiques connectées à Internet, et dont la sécurité est insuffisante. La cartographie Internet de Shodan permet de quantifier les problèmes systémiques de sécurité auxquels est confronté le réseau. Les journalistes peuvent en rendre compte, à charge pour les décideurs politiques de trouver des solutions à ces problèmes à grande échelle. (Pour être tout à fait transparent, il faut signaler que le journaliste de CSO, J.M Porup, est membre de Shodan et qu’il trouve que c’est un outil très utile pour son travail d'investigation).
Si l’on prend par exemple le cas des systèmes de contrôle industriel comme ICS/SCADA, antérieurs à Internet, ils ont été conçus à dessein sans aucune précaution de sécurité. Ils n'ont jamais été destinés à être connectés à Internet, et les contrôles de sécurité physiques étaient considérés comme plus que suffisants pour empêcher un attaquant malveillant de déverser éventuellement des eaux usées dans le réseau d'eau potable. Tout cela est très différent aujourd’hui. Ces infrastructures critiques qui n'ont jamais été destinées à être connectées à Internet sont désormais à la portée de tous les pirates de la planète. Shodan permet de trouver facilement ces systèmes et de déclencher une alarme. Il serait bon de se demander s’il est souhaitable que des installations de traitement de l'eau, des barrages, des crématoriums, des yachts, etc. soient connectés à Internet à tout moment. Sans doute que non. Et Shodan permet de sensibiliser la société à cette question.
Des milliers de dispositifs IoT à risque
De même, des milliers de dispositifs IoT peu sécurisés inondent le marché, aussi bien des cafetières connectées, des réfrigérateurs, que des sextoys, et autres gadgets en tout genre. Il est clair que le marché n'a pas réussi à imposer des règles de sécurité fortes pour ces dispositifs, et les régulateurs, à quelques exceptions près, n'ont pas pris de mesures pour exiger des contrôles plus stricts en matière de cybersécurité. Pire encore, les fabricants d’IoT font faillite ou n’offre aucun support digne de ce nom pour les dispositifs qu’ils vendent, livrant aux consommateurs des dispositifs non sécurisés - et impossibles à sécuriser - qui sont ensuite asservis à des armées de botnets. Le risque que cela représente pour l'ensemble de l'Internet ne peut être sous-estimé. Les non spécialistes qui se sont sentis menacés par le « dangereux » Shodan, devraient plutôt manifester leurs craintes au marché et aux autorités de règlementation qui permettent à cette situation de s'épanouir.
Chacun peut explorer le fonctionnement de Shodan librement. Mais avec un compte gratuit, le nombre de résultats est limité. L’abonnement payant (49 dollars HT pour un usage à vie) permet aussi de bénéficier de filtres avancés. Ce même abonnement est accessibles aux développeurs et aux utilisateurs d’entreprise qui ont besoin d'un flux de données en temps réel de la totalité du shebang (# !). Défendre son entreprise dans les situations embarrassantes a peut-être une valeur dans les relations publiques, mais pas en terme de sécurité. Shodan offre une visibilité sur le niveau de sécurité externe et sur celui des autres entreprises. L’Internet est confronté à des problèmes de sécurité de plus en plus nombreux. Même si cela peut mettre certaines personnes mal à l'aise, Shodan révèle clairement le problème.