Un conteneur Docker est une forme standard de conditionnement de logiciel lorsque tous les logiciels, ainsi que leurs dépendances, sont conditionnés sous une forme légère, autonome et exécutable. Cette forme exécutable finale est appelée une image de conteneur Docker. Lorsqu'une image de conteneur Docker est exécutée, elle devient un conteneur Docker au moment de l'exécution. Afin de localiser et de partager les images de conteneurs Docker, Docker propose un service appelé Docker Hub, actuellement la plus grande bibliothèque et communauté au monde pour les images de conteneurs.
Sa principale caractéristique, les dépôts, permet aux développeurs de pousser/charger (upload) et d'extraire (download) des images de conteneurs. Avec Docker Hub, n'importe qui dans le monde peut extraire et exécuter n'importe quelle image publique, comme s'il s'agissait d'une application autonome. Aujourd'hui, Docker Hub compte plus de 4 millions d'images publiques de conteneurs Docker. Ce mois, Prevasio, une entreprise australienne de cybersécurité exploitant un logiciel permettant une analyse avancée des menaces pour les conteneurs Docker, a annoncé qu'elle a terminé le balayage de 4 millions d'images de conteneurs sur Docker Hub.
Selon l'entreprise, près de 1 % de toutes les images sont construites pour Windows uniquement ou n'ont pas de constructions spécifiques pour Linux. Ces images ont été exclues de l'analyse, car Prevasio a ciblé uniquement les images de conteneurs Linux. Le résultat de l'analyse dynamique a révélé que sur les 4 millions d'images de conteneurs disponibles publiquement, 6 432 se sont révélées malveillantes ou potentiellement nuisibles, ce qui représente 0,16 % de l'ensemble du registre de Docker Hub.
Outre l'analyse antivirus, Prevasio a également effectué une évaluation de la vulnérabilité de chaque image analysée, en utilisant le scanner de vulnérabilité Trivy d'Aqua Security. La tâche principale de l'évaluation de la vulnérabilité était de détecter une version de chaque dépendance de paquet et d'application dans chaque conteneur Docker, puis de signaler si cette version était connue pour être vulnérable. Les résultats de l'évaluation de la vulnérabilité révèlent que plus de 2 millions d'images présentes sur Docker Hub contiennent un ou plusieurs paquets ou dépendances d'application avec au moins une vulnérabilité critique.
Chacune de ces images de conteneurs est potentiellement exploitable. L'ensemble des images de conteneurs malveillants ou potentiellement dangereux trouvées par Prevasio sur Docker Hub peuvent être réparties dans les catégories suivantes : des outils de minage de cryptomonnaies (coinminers), des logiciels malveillants, des applications de type trojan et des outils de piratage.
Les outils de minage de cryptomonnaies
Ces applications (coinminers) représentent la plus grande catégorie, avec 44 % du nombre total de toutes les images de conteneurs malveillantes/potentiellement dangereuses. La plupart des applications de cette catégorie sont des outils open source de minage de cryptomonnaies, les développeurs de ces applications annoncent clairement le fait que leurs images de conteneurs contiennent des outils de minage de cryptomonnaies. Du point de vue du nombre de téléchargements, certaines images de conteneurs contenant des outils de minage de cryptomonnaies semblent être plus populaires que d'autres.
À titre d'exemple, une image de conteneur de "coinmining kannix/monero-miner" compte 22 millions de téléchargements et quatre images contenant des outils de minages de cryptomonnaies de "masterroshi" comptent plus de 48 millions de téléchargements. Selon le rapport, malgré l'ouverture pour la plupart de ces applications, un nombre substantiel de conteneurs aura dissimulé des outils de minages de cryptomonnaies sous des applications légitimes. Selon Prevasio, quelle que soit l’intention initiale, si un employé extrait de Docker Hub puis exécute une image de conteneur de ce type au travail, il y a de fortes chances que les ressources de l’entreprise ne soient pas utilisées comme prévu à l’origine.
En outre, un administrateur système peut trouver ces images de conteneurs indésirables pour un environnement d'entreprise ou même potentiellement dangereuses. Pour cette raison, toute image de conteneur Docker contenant des outils de minage de cryptomonnaies inscrite dans le rapport est considérée comme appartenant à une catégorie d'applications potentiellement indésirables/dangereuses.
Package npm malveillant
Selon le rapport, la deuxième plus grande catégorie des mauvaises images signalées représente elle-même un exemple classique d'attaque de la chaîne d'approvisionnement. Prevasio estime qu'il y a près de deux ans, il a été signalé qu'un flux d'événements de package npm populaire contenait un package "flatmap-stream" malveillant. Un attaquant anonyme a obtenu les droits de publication du mainteneur d'origine et a ajouté un package malveillant de vol de Bitcoin en tant que dépendance du package de flux d'événements. Cela a déclenché une chaîne d'événements et le package malveillant s'est instantanément répliqué dans un grand nombre de packages.
Les outils de piratage
La catégorie suivante en importance est celle des outils de piratage. Il contient plusieurs frameworks et outils de test d'intrusion et est généralement ouvertement annoncé comme tel. Ces outils sont conçus pour les équipes rouges et les tests d'intrusion. D'après Prevasio, étant donné que la présence de telles images dans un environnement d'entreprise représente toujours un risque, toute image de conteneur contenant un outil de piratage a été classée comme potentiellement indésirable. En analysant cette catégorie, Prevasio a découvert une tendance inquiétante : une prolifération d'outils multiplateformes de piratage dans les images des conteneurs Docker.
En particulier, les frameworks de tests d'intrusion construits avec PowerShell et GoLang sont désormais hébergés sur Docker pour être exécutés sur Linux, conservant la pleine capacité d'attaquer d'autres plateformes.
Les logiciels malveillants pour Windows et les autres outils
Une catégorie étonnamment grande d'images de conteneurs Linux malveillants comprend des logiciels malveillants conçus à l'origine pour les environnements Windows. Prevasio a fourni certains exemples de telles images de conteneurs dans le rapport. La catégorie restante d'images de conteneurs malveillants contient des applications de type trojan et diverses formes de logiciels malveillants répartis dans diverses autres catégories.
Conclusion
Le rapport de Prevasio a conclu que le système d'exploitation Linux et les conteneurs Linux, en particulier, n'étaient pas à l'abri des risques de sécurité. Près de la moitié de toutes les images de conteneurs hébergées par Docker Hub contenaient une ou plusieurs vulnérabilités critiques et étaient potentiellement exploitables. Seul un cinquième de toutes les images testées par l'entreprise n'avait aucune vulnérabilité révélée. Selon l'entreprise, la chaîne d'approvisionnement des logiciels a davantage besoin d'efforts de sécurité.
Elle estime que de plus en plus d'attaquants ont commencé à identifier les faiblesses et à glisser des logiciels malveillants dans les ordinateurs des employés, contournant la sécurité du périmètre. En outre, Prevasio ajoute que l'adoption de Docker est devenue un standard pour la plupart des applications complexes de classe entreprise, plusieurs grandes entreprises mettant en œuvre des conteneurs Docker sous une forme ou une autre. En raison de la conteneurisation disponible partout, la surface d'attaque a augmenté de façon exponentielle.
En tant que tel, Prevasio a suggéré que son étude devrait être d'une grande préoccupation pour toute entreprise cliente. L'entreprise a averti que si un développeur prend un raccourci en récupérant une image prédéfinie au lieu d'en créer une à nouveau, il y a un risque énorme que l'image prédéfinie contient un cheval de Troie. Lorsque ces images aboutissent en production, elles permettent aux attaquants d'accéder facilement aux applications conteneurisées via une porte dérobée.
Source : Rpport de l'étude (PDF)
Et vous ?
Quel est votre avis sur cette étude ? Pertinente ou pas ?
Votre organisation utilise-t-elle Docker ? Que pensez-vous de cette technologie ?
Avez-vous déjà eu affaire à une image de conteneur Docker malveillante ? Comment vous en êtes-vous débarrassé ?
Voir aussi
Amazon prodigue des conseils aux clients AWS confrontés aux nouvelles limites d'extraction de Docker Hub. Google fait pareil pour les utilisateurs de GCP
ASP.NET Core est le 3e serveur Web le plus rapide, répondant à 7 millions de requêtes HTTP/s, selon un test de TechEmpower
Docker Hub piraté : 190 000 comptes exposés, les jetons GitHub révoqués et les compilations désactivées
Oracle supprime une image Docker approuvée par la communauté et utilisée lors des tests sur son SGBD, évoquant une violation de ses droits d'auteur
Google Cloud Platform parvient à se rapprocher des performances d'AWS et de Microsoft Azure, selon un rapporrt