L'embarqué > Normes & spécifications > Sécurité > "La sécurité doit devenir un pilier fondateur des fabricants d’objets connectés"

"La sécurité doit devenir un pilier fondateur des fabricants d’objets connectés"

Publié le 20 avril 2017 à 08:58 par François Gauthier        Sécurité

Pascal Geenens Radware

[TRIBUNE by Pascal Geenens, RADWARE] Il n’existe actuellement aucun standard ni même de consensus quant aux conditions mêmes de la sécurité des objets connectés. Mais la responsabilité en incombe in fine aux fournisseurs, car il ne faut pas attendre l’entrée en vigueur de réglementations avant de s’intéresser à la sécurité des produits connectés. Instiller une culture de sécurité dans l’entreprise et accepter que la sécurité ait un impact sur la structure organisationnelle, tels sont les conseils donnés par Pascal Geenens, évangéliste sécurité chez Radware, à travers cinq recommandations concrètes.

Plus les dispositifs sont connectés, plus ils deviennent potentiellement intelligents et riches en fonctionnalités. Dans l’Internet des objets, à peu près tous les objets peuvent être connectés, les routeurs, les thermostats intelligents, les ampoules intelligentes, les serrures, les frigidaires intelligents et même les automobiles. Dans l’actualité récente, plusieurs centaines de milliers d’objets connectés dépourvus de sécurité suffisante et regroupés dans d’immenses botnets (groupes d’ordinateurs infestés par un virus et pilotés à distance par un pirate informatique) ont servi à déclencher des attaques dites DDoS (Distributed Denial of Service oiu déni de service distribué) d’ampleur inédite qui ont mis à mal plusieurs services en ligne connus.

Face à cette tendance, les fabricants doivent impérativement faire de la sécurité une priorité stratégique. Car les consommateurs sont en demande de solutions intégrant d’emblée une sécurité maximale pour protéger leur domicile, leur vie privée et leurs informations personnelles. A ce titre, il conviendrait de définir de nouvelles réglementations et de pallier l’actuel manque de certifications ou de labellisations des produits afin que les consommateurs puissent distinguer les marques et les produits selon les garanties de sécurité qu’ils offrent. Mais d’ici là, les fabricants peuvent d’ores et déjà aller dans ce sens en respectant cinq grandes recommandations.

1) Investir dans une plate-forme d’exploitation commune avec sécurité intégrée.

Un système d’exploitation (Operating System) unique délivre une expérience utilisateur cohérente sur tous les appareils et donne l’avantage de pouvoir déployer les mises à jour et apporter des modifications à tous les dispositifs en circulation à la fois, limitant ainsi les efforts superflus de duplication et de portage pour les mises à jour de sécurité et les nouvelles fonctions. Dans ce cadre, Linux et BusyBox sont un bon choix pour les dispositifs embarqués, tout comme Windows 10, Android ou toute autre plate-forme adaptée. En fait, ce n’est pas l’OS de base en tant que tel qui garantit la sécurité, mais la façon dont il est administré et maintenu systématiquement à jour avec la dernière version disponible. Concrètement, pour y parvenir plusieurs actions sont à mettre en œuvre.

- Désactiver par défaut tous les services inutiles, et plus particulièrement SSH, Telnet, SMB et FTP : la plupart des utilisateurs ne s’en serviront jamais et ceux qui pourraient en avoir besoin pour des opérations avancées sauront où les activer.

- Ne pas exécuter l’interface d’administration à partir d’un serveur Web en mode root : en cas de faille RCE (Remote Command Execution), le risque d’exposition aux hackers est très élevé. Il faut exécuter le serveur Web dans un environnement dit “chrooté” (i.e. doté d’un mécanisme de changement de répertoire racine d'un processus) avec des droits utilisateur limités. La plupart des serveurs Web modernes sont configurés par défaut pour tourner avec des droits limités, mais il arrive que des fabricants changent la configuration pour que le serveur Web tourne en mode root. Tout simplement parce que c’est plus facile pour eux, par exemple d’intervenir en lecture/écriture sur des fichiers protégés. De manière générale, il ne faut jamais perdre de vue, chaque fois que l’on prend un raccourci, que l’on simplifie une action, que c’est aussi dans le même temps rendre la vie plus facile pour un hacker.

- Utiliser des versions à jour du kernel de l’OS et des services, telnetd/sshd, serveur Web, PHP ou autre framework qui sous-tend l’interface utilisateur. Même le logiciel intégrant d’emblée les meilleures garanties de sécurité sera vulnérable s’il tourne sur un framework ou un service lui-même vulnérable.

- Eviter de cacher des “portes dérobées” (backdoors) et des mots de passe en réserve. Certains fabricants prennent le risque de laisser des portes dérobées pour les besoins de support technique à distance. Mais ce “secret” ne tiendra pas longtemps avant d’être révélé et exploité par un hacker. Il faut savoir qu’une simple inspection des mises à jour de microcode publiquement téléchargeables suffit à révéler facilement la plupart des portes dérobées. Un hacker n’a même pas besoin d’avoir accès à l’appareil pour se procurer de telles informations.

- Le protocole UPnP de découverte du réseau local améliore l’expérience utilisateur. Mais à ce niveau il faut éviter d’utiliser le protocole UPnP-IGD (Internet Gateway Device). Celui-ci permet en effet de “percer des trous” dans la sécurité des passerelles Internet des propriétaires, sans même que ceux-ci s’en rendent compte. Conséquence, le dispositif devient accessible directement depuis Internet. Si l’accessibilité par Internet est indispensable, il faut donc être conscient des conséquences et veiller à doubler toutes les mesures prises pour sécuriser le dispositif en raison de son exposition. Une des voies possibles est de laisser l’utilisateur ouvrir lui-même un port ou créer une règle de direction de port, afin qu’il mesure le risque pour sa sécurité et qu’il sache qu’il a pratiqué une percée dans sa passerelle Internet. Il vaut mieux toutefois privilégier d’autres options afin d’éviter l’exposition à Internet. Mais en fin de compte, l’ouverture d’un port demeure parfois la seule possibilité.

2) Imposer l’utilisation de mots de passe renforcés… mais pas trop, afin d’éviter que les utilisateurs aient à les noter !

Certains fabricants et/ou utilisateurs veulent employer des mots de passe extrêmement sûrs et utiliser des outils de gestion de mots de passe. Il n’y a pas de contre-indication à autoriser cette pratique, mais il ne faut pas l’imposer non plus. L’important est de contrôler la robustesse des mots de passe au moyen des dictionnaires ad hoc, librement accessibles, afin d’éviter que les utilisateurs s’exposent à des attaques dites par force brute. Il ne faut pas non plus stocker les mots de passe dans un format réversible par chiffrement symétrique, mais plutôt privilégier le hachage cryptographique pour stocker ces mots de passe. Pour ce faire, il faut choisir des méthodes de hachage modernes et sécurisées et éviter les algorithmes MD5 ou SHA-1. Même le mot de passe le plus robuste sera inutile si la méthode de hachage employée est faible. Autre voie plus radicale : l’intégration de services d’authentification centralisée fréquemment utilisés par les entreprises, comme LDAP, Radius ou TACACS, et puis appliquer les règles de gestion des mots de passe établies dans l’entreprise.

3) Investir dans une procédure de mise à jour OTA (over-the-air) robuste et conviviale

Idéalement, les mises à jour d’un logiciel doivent se faire automatiquement. On peut aussi permettre aux utilisateurs de télécharger la mise à jour sur leur terminal d’un simple clic sur un bouton dans l’interface d’administration. Une chose est certaine, il faut télécharger un package à graver sur un support flash, ce qui oblige à taper des séquences de touches impossibles ou des commandes CLI (Command Line Interface) pour lancer une procédure de mise à jour. Il faut faire en sorte que ce soit simple, pratique et accessible. Par exemple, en adressant des notifications aux propriétaires par e-mail pour leur signaler dès qu’une mise à jour est disponible afin qu’ils puissent s’organiser sans attendre. Il faut aussi penser à signer les packages de mises à jour et les vérifier au moment de l’installation pour être certain qu’ils n’ont fait l’objet d’aucune malveillance.

4) Créer un programme de signalement et de gestion des vulnérabilités et délivrer des instructions claires ainsi que des points de contact aux chercheurs en sécurité.

Dans le cadre d’un cycle de développement, une idée riche de potentiel est d’envisager un programme de récompense pour les chercheurs en sécurité afin de les attirer. Car il faut prendre au sérieux toutes les vulnérabilités signalées et intervenir dans les meilleurs délais en cas de découverte d’une faille. L’idée ici est d’identifier des chercheurs compétents et de les laisser publier leurs conclusions une fois la vulnérabilité comblée. Aucun dispositif ni logiciel n’est totalement exempt de vulnérabilités, tout le monde le sait. Ce type d’action ne fera donc pas de mauvaise publicité. Au contraire, cette transparence conforte la réputation du fabricant et, par voie de conséquence, chercheurs en sécurité et consommateurs percevront un fabricant sérieux en qui il est possible d’avoir confiance.

5) Limiter les quantités de données personnelles stockées sur les dispositifs : plus on stocke d’informations, plus on prend le risque qu’on les vole

Il ne faut pas oublier que dès mai 2018, tout fournisseur amené à stocker les informations personnelles d’un citoyen de l’Union européenne sera responsable de la protection de ces données en vertu du règlement général de l’UE sur la protection des données, le GDPR (General Data Protection Regulation). Ce fournisseur s’exposera alors à des pénalités pouvant atteindre 20 000 000 d’euros en cas de défaut de conformité. S’il est indispensable d’avoir des informations de profil, il faut les stocker sous une forme chiffrée et informer clairement l’utilisateur des risques.

Sur le même sujet