Shodan

Systèmes connectés : Shodan, point de passage obligé pour étudier son exposition

Spécialisé dans le référencement des objets accessibles ouvertement sur Internet, le Google des systèmes connectés est devenu indispensable pour étudier l’exposition aux attaques potentielles. Voici comment l'utiliser.

Shodan est un moteur de recherche qui permet de trouver certains types précis de systèmes informatiques, comme des systèmes de contrôle industriel (ICS/Scada), dès lors qu’ils sont accessibles sur Internet.

Il représente l’un des composants incontournables d’une recherche d’informations en sources ouvertes sur les vulnérabilités potentielles d’une entreprise. Les attaquants peuvent certes s’en servir, mais c’est aussi un outil précieux pour les équipes chargées de prévenir les attaques. Sans surprise, il fait partie de l’attirail étudié par les participants à certaines formations, dont celles dispensées par BlueCyForce, par exemple.

Les experts pourront le comparer à une sorte de nmap industrialisé : ce logiciel permet de parcourir un réseau IP pour en découvrir les hôtes ainsi que les services qu’ils exposent. Alors que nmap s’utilise plutôt de façon ciblée, en étant connecté au réseau considéré, Shodan ratisse large. Il s’intéresse à tous les systèmes accessibles directement sur Internet, en indexant les résultats pour en permettre une consultation facile, par n’importe quel béotien.

Shodan permet ensuite de lancer des recherches sur les données qu’il a collectées, à partir de son site Web. D’autres outils peuvent égalements’y intégrer via ses API. C’est par exemple le cas du framework d’étude de vulnérabilités Metasploit.

Effectuer une recherche de base

Pour mesurer le potentiel de Shodan, autant commencer par une recherche de base, depuis le site Web. Par exemple, une recherche sur le terme MongoDB permet de faire ressortir plus de 53 000 instances de ce système de gestion de base de données, dont près de 2 300 en France.

Il est possible d’être plus spécifique, en cherchant par exemple sa version 3.4, mais aussi une région géographique spécifique ou d’autres attributs. Pour chaque résultat, Shodan présente adresse IP, nom d’hôte, fournisseur d’accès à Internet, date de découverte de l’hôte, son pays, ainsi que les informations de base renvoyées.

Certains noms de bases de données sont là particulièrement explicites : « DB_H4CK3D », ou « WE_HAVE_YOUR_DATA », ou encore « WRITE_ME » trahissent une instance compromise par un attaquant. Une surprise ? Non, car en début d’année, plusieurs dizaines de milliers d’instances MongoDB mal sécurisées ont été prises en otage par des attaquants.

De nombreux détails supplémentaires sont disponibles pour chaque hôte, en cliquant simplement sur son adresse IP : ports ouverts, services correspondants et leurs détails, et même une localisation géographique – plus ou moins fiable – rapportée sur carte.

Procéder à une recherche avancée

Shodan permet d’aller bien au-delà de la seule recherche de base. Pour procéder à une recherche avancée, il est toutefois nécessaire de créer un compte (gratuit, pour l’offre de base).

Là, de nombreux filtres sont disponibles pour affiner la recherche : « title: », pour cibler un mot-clé présent dans le titre d’une page Web ; « html: », pour trouver un mot-clé présent dans du code HTML complet ; « product: », pour chercher un logiciel spécifique ; « net: », pour limiter la recherche à bloc d’adresses IP précis ; « version: », pour trouver une version précise d’un produit ; « port: », pour limiter la recherche à un ou plusieurs ports spécifiques ; « os: », pour restreindre la recherche à un système d’exploitation ; « country: » ; pour se limiter à un pays ; ou encore « city: », pour centrer la recherche sur une ville.

Par exemple, pour vérifier si une entreprise dotée de plusieurs bureaux à Pari s’exécute, ou pas, sur certains sites, une version vulnérable de Jboss, on peut lancer la recherche suivante : jboss 5.0 country:“FR“ city:“paris“. Le moteur de recherche retourne une dizaine de résultats. Cet exemple n’est pas innocent : au printemps 2016, les chercheurs de la division Talos de Cisco ont découvert 3,2 millions de serveurs Jboss susceptibles d’être détournés pour distribuer des logiciels malveillants, ou d’être la cible de rançongiciels comme SamSam.

Des surprises comme s’il en pleuvait

Dans la pratique, les surprises ne manquent pas. Pour s’en convaincre, il suffit de lancer une recherche sur « port:502 country:FR ». Ce port correspond au protocole modbus utilisé pour certains systèmes ICS/Scada signé Schneider Electric. Ils sont près de 850 en France exposés directement sur Internet, dont certains ayant été privés des plus récentes mises à jour. Cela peut concerner un éventail très large d’entreprises, dont des exploitants de centrales hydroélectriques. Et ce n’est qu’un exemple, sur l’un des protocoles utilisés dans le monde des systèmes de contrôle industriel, sans compter ceux qui ne sont pas directement exposés en ligne, mais dont l’interface Web d’administration peut l’être. Et ces cas ne manquent pas.

A une même adresse, outre des systèmes ICS/Scada, on peut trouver des PC exécutant Windows 7, des serveurs Web comme IIS de Microsoft. Et encore une fois, pas toujours très jeunes. Et c’est sans compter sur les services de prise de contrôle à distance, en ligne de commande ou en déport d’affichage avec VNC ou RDP, ou encore les services de partage de fichiers. Flashpoint alertait récemment de la mise en vente, en ligne, de milliers de services RDP compromis, dont près de cinq cents en France – Shodan en référence plus de 77 000 exposés dans l’Hexagone, parfois par des machines exécutant des systèmes d’exploitation obsolètes.

La multiplicité des services et des types d’hôtes exposés trahit généralement le fait qu’ils ne sont pas connectés directement à Internet, mais derrière un routeur configuré pour assurer une redirection de ports. Et c’est peut-être un signe plus mauvais qu’il peut le sembler : si certains services exposés sont susceptibles de résister aux attaques extérieures, ce n’est pas forcément le cas pour d’autres, qui pourraient alors constituer une désastreuse porte d’entrée sur l’infrastructure.

Pour approfondir sur Gestion de la sécurité (SIEM, SOAR, SOC)