Attaque à la chaîne d'approvisionnement du logiciel libre : l'incident de la porte dérobée xz

2025-03-22

En mars 2024, une porte dérobée a été découverte dans xz, un logiciel de compression largement utilisé. Un mainteneur malveillant, utilisant le pseudonyme de Jia Tan, a secrètement inséré cette porte dérobée pendant trois ans. La porte dérobée permettait l’exécution de code à distance sur les machines disposant de ssh installé. Sa découverte a été accidentelle, par un développeur Postgres qui enquêtait sur des problèmes de performances non liés. Cet article détaille le fonctionnement de la porte dérobée et propose d’utiliser la reproductibilité de la build pour la détection. La porte dérobée impliquait la modification du processus de build de xz pour injecter un fichier objet malveillant et exploiter le mécanisme ifunc de glibc pour accrocher la fonction RSA_public_decrypt de ssh. L’auteur préconise de construire le logiciel à partir de sources fiables et d’utiliser la reproductibilité de la build pour améliorer la sécurité de la chaîne d’approvisionnement logicielle, comme comparer les versions de GitHub avec les fichiers tarball fournis par le mainteneur et vérifier la cohérence binaire entre les sources de build.

Lire plus
(luj.fr)
Technologie porte dérobée xz

Reproductibilité des builds NixOS : mieux que vous ne le pensez

2025-02-12

La reproductibilité des builds de NixOS a longtemps été un sujet de controverse. Si son modèle de gestionnaire de paquets fonctionnel contribue à la reproductibilité des builds, il ne garantit pas la reproductibilité bit à bit pour toutes les builds. Un nouvel article de recherche étudie empiriquement Nixpkgs (la collection de paquets de NixOS) sur six ans, révélant un taux de reproductibilité en constante augmentation, passant de 69 % en 2017 à 91 % en avril 2023. L'étude identifie également les causes principales de non-reproductibilité, telles que les dates intégrées, les sorties uname, les variables d'environnement et les ID de build. Ces résultats montrent que même si Nixpkgs atteint déjà des taux de reproductibilité élevés, il reste une marge d'amélioration en s'attaquant à ces points. Cette recherche est cruciale pour accroître la confiance dans le protocole de substitution Nix et stimuler le développement de solutions de cache distribuées basées sur la reproductibilité des builds.

Lire plus
(luj.fr)