Logiciels 36 commentaires
RIDL, Fallout, Zombieload, MDS… Pas un mois ne passe sans qu’apparaisse une nouvelle version de Spectre, cette faille qui exploite les mécanismes d’exécution spéculative des processeurs, et permet à une application malveillante d’extraire les données d’une autre application. « Nous allons vivre avec ces problèmes pendant longtemps », explique Greg Kroah-Hartman, l’un des principaux développeurs du noyau Linux, au cours d’une conférence donnée lors de l’Open Source Summit Europe, le grand raout de la fondation Linux.
RIDL et Fallout touchent la dernière génération de processeurs Intel, qui comprennent pourtant des garde-fous contre les failles touchant les mécanismes d’exécution spéculative. Contrairement aux attaques comme Spectre ou Foreshadow, qui concernent les caches des processeurs, RIDL et Fallout s’intéressent aux mémoires tampons internes aux processeurs. Autrement dit : un problème jugé « exceptionnel » l’an passé s’avère systémique.
...
« Les processeurs sont devenus si complexes que les fabricants sont incapables de contrôler leur sécurité », poursuit-elle, « nous n’avons aucune idée du nombre de failles matérielles ”zero-day” encore exploitables.
...
pour accélérer les opérations, les processeurs essayent d’anticiper la prochaine action, d’une manière qui peut être abusée par des applications malveillantes. Même si certains processeurs AMD et ARM sont vulnérables à certaines attaques, les processeurs Intel sont plus durement touchés. Et même si ces failles peuvent être exploitées sur tous les appareils dotés d’un processeur moderne, elles concernent plus particulièrement les serveurs, puisqu’elles peuvent franchir les limites des machines virtuelles et des conteneurs.
Or Intel est un acteur central dans le domaine du cloud computing, qui repose très largement sur le noyau Linux (dont Intel est, par une ironie cruelle, le premier contributeur). Les dernières failles exploitent des problèmes de conception du mécanisme d’hyperthreading d’Intel, qui permet d’exécuter deux opérations — deux threads — simultanées sur un seul cœur. Comme les deux threads partagent la même mémoire cache, une attaque bien conçue peut récupérer les données du thread voisin. Les barrières des applications, des machines virtuelles, et même de la Secure Enclave des processeurs Intel peuvent ainsi être franchies.
La communauté formée autour d’OpenBSD, un système UNIX particulièrement attaché à la sécurité, a réagi en désactivant complètement l’hyperthreading. ... mises à jour du noyau et du BIOS » : désactiver l’hyperthreading, ou mettre à jour le BIOS sans mettre à jour le système, « ne suffit pas » ... d’autres reviennent sur les mesures de « mitigation » ... déclaration-choc : « si vous utilisez un système stable, vous n’utilisez pas un système sécurisé ». Les distributions GNU/Linux suivent, peu à peu, l’exemple d’OpenBSD. Microsoft recommande, dans certains cas, de désactiver l’hyperthreading dans les environnements serveur qui utilisent des machines virtuelles. Et Apple ? Au-delà des mises à jour explicitement dédiées à Spectre et Meltdown, ou plus récemment à Zombieload, la firme de Cupertino n’a pas dévoilé ses intentions...
Docker est un logiciel libre qui automatise le déploiement d'applications dans des conteneurs logiciels5. Selon la firme de recherche sur l'industrie 451 Research, « Docker est un outil qui peut empaqueter une application et ses dépendances dans un conteneur isolé, qui pourra être exécuté sur n'importe quel serveur ». Ceci permet d'étendre la flexibilité et la portabilité d’exécution d'une application, que ce soit sur la machine locale, un cloud privé ou public, une machine nue, etc.6.
Docker étend le format de conteneur Linux standard, LXC, avec une API de haut niveau fournissant une solution de virtualisation qui exécute les processus de façon isolée7. Docker utilise LXC, cgroups, et le noyau Linux lui-même6. Contrairement aux machines virtuelles traditionnelles, un conteneur Docker n'inclut pas de système d'exploitation, s'appuyant sur les fonctionnalités du système d’exploitation fournies par l'infrastructure sous-jacente8.
La technologie de conteneur de Docker peut être utilisée pour étendre des systèmes distribués de façon qu'ils s'exécutent de manière autonome depuis une seule machine physique ou une seule instance par nœud. Cela permet aux nœuds d'être déployés au fur et à mesure que les ressources sont disponibles, offrant un déploiement transparent et similaire aux PaaS pour des systèmes comme Apache Cassandra, Riak ou d'autres systèmes distribués9.
...
Docker a été développé par Solomon Hykes pour un projet interne de dotCloud, une société proposant une plate-forme en tant que service, avec les contributions d'Andrea Luzzardi et Francois-Xavier Bourlet, également employés de dotCloud, entreprise française. Docker est une évolution basée sur les technologies propriétaires de dotCloud, elles-mêmes construites sur des projets open source.
Docker a été distribué en tant que projet open source à partir de mars 2013 7.