La semaine dernière, une découverte troublante a secoué le monde de l’open source : une porte dérobée a été identifiée dans XZ Utils, un outil de compression de données très utilisé dans les distributions GNU/Linux. Cette faille de sécurité, mise en place de manière particulièrement sophistiquée, soulève de nombreuses inquiétudes quant à la sécurité des systèmes d’exploitation basés sur Linux.
XZ Utils : un outil crucial maintenu par une équipe réduite
XZ Utils est un outil open source permettant de compresser efficacement des données grâce à l’algorithme LZMA (Lempel-Ziv-Markov chain algorithm). Jusqu’à récemment, son développement reposait principalement sur un seul développeur, Lasse Collin. Cette situation, bien que courante dans l’écosystème open source, met en évidence la fragilité de certains rouages cruciaux de nos systèmes, comme l’illustre parfaitement ce comic de xkcd.
Une porte dérobée dissimulée avec soin
C’est Andres Freund, développeur chez Microsoft, qui a découvert le pot aux roses en s’intéressant à un problème de consommation CPU. Il a ainsi mis en lumière la présence d’une porte dérobée dans la version 5.6 de xz. Cette dernière, activée lors de l’exécution d’un programme lié à une connexion SSH, permettait une prise de contrôle de la machine cible à l’aide d’une clé spécifique.
Heureusement, cette version compromise n’a pas été intégrée dans la majorité des distributions GNU/Linux. Cependant, certaines comme Fedora Rawhide, Fedora 41, Debian testing et unstable, openSUSE Tumbleweed et MicroOS ainsi que Kali Linux ont pu être touchées.
Un travail de longue haleine pour infiltrer le code
Le plus troublant dans cette affaire est le niveau de sophistication de la porte dérobée et le temps consacré à sa mise en place. Le responsable, connu sous le pseudonyme JiaT75 (Jia Tan), a commencé à contribuer à divers projets open source dès 2021 avant de s’intéresser à XZ Utils début 2023. Après plusieurs contributions régulières, il a finalement intégré la faille dans une version publiée en février 2024, tout en insistant pour que cette version compromise soit incluse dans certaines distributions comme Fedora ou Ubuntu.
La porte dérobée était dissimulée avec soin, n’apparaissant pas dans la version publique sur GitHub mais uniquement dans celle destinée aux distributions. Elle ciblait spécifiquement les machines basées sur une architecture x86-64 sous GNU/Linux (épargnant ainsi les Mac) et se déclenchait uniquement dans des conditions précises, prenant même soin de se cacher en présence d’un programme de débogage.
Une attaque étatique suspectée
L’ampleur des moyens déployés et le temps consacré à infiltrer cette porte dérobée laissent penser qu’il ne s’agit pas d’une attaque anodine. Les différents projets auxquels a participé Jia Tan (probablement un pseudonyme) sont désormais passés au crible. Certains experts en sécurité évoquent même la possibilité d’une attaque étatique au vu des ressources nécessaires pour mener à bien une telle opération.
Cette affaire met en lumière la fragilité de certains maillons essentiels de nos systèmes informatiques et rappelle l’importance d’une vigilance constante, y compris (et surtout) au sein des projets open source.