La compagnie d'assurance GEICO a publié une version préliminaire de l'outil TuxTape, permettant de déployer sa propre infrastructure pour créer, assembler et livrer des correctifs live pour le noyau Linux. Les correctifs live permettent d'appliquer des corrections au noyau Linux à la volée, sans redémarrage ni arrêt du système. Le code du projet est écrit en Rust et est distribué sous licence Apache 2.0.
Les correctifs live corrigeant les vulnérabilités sont fournis pour leurs distributions par des entreprises comme Red Hat, Oracle, Canonical et SUSE, mais leur outil de base pour travailler avec les correctifs reste fermé, tandis que les correctifs eux-mêmes sont développés en secret. Les distributions Gentoo et Debian ont tenté de développer des projets ouverts elivepatch et linux-livepatching, mais le premier est dans un état abandonné depuis 6 ans, et le second a été ralenti au stade de la création d'un prototype de test.
TuxTape vise à organiser le fonctionnement de son propre système de création et de livraison de correctifs live, indépendamment des fournisseurs externes et adaptable à tous les noyaux Linux, et pas seulement aux packages avec le noyau de distributions spécifiques. TuxTape peut créer des correctifs live compatibles avec l'outil kpatch développé par Red Hat (en plus de kpatch, il existe des outils similaires : kGraft de SUSE, Ksplice d'Oracle et un correctif live universel). Les correctifs sont formés sous forme de modules chargés dans le noyau, qui remplacent les fonctions dans le noyau en utilisant la sous-système ftrace pour rediriger vers de nouvelles fonctions incluses dans le module.

TuxTape peut suivre les informations sur les corrections de vulnérabilités dans le noyau Linux, publiées sur la liste de diffusion linux-cve-announce et dans le dépôt Git, classer les vulnérabilités par degré de gravité, déterminer l'applicabilité aux noyaux Linux maintenus et générer des correctifs live basés sur des correctifs ordinaires pour les branches LTS du noyau. L'applicabilité des correctifs sources est évaluée par le profilage des constructions du noyau. Les correctifs avec des vulnérabilités ne touchant pas le noyau cible sont ignorés.
TuxTape comprend un système pour suivre les nouvelles vulnérabilités dans le noyau, un générateur de base de données de correctifs et de vulnérabilités, serveur pour stocker les métadonnées, un système de répartition des constructions de noyau, un assembleur de noyau, un générateur de correctifs, une archive de correctifs, un client pour récupérer des correctifs pour les hôtes finaux et une interface interactive pour gérer la formation de correctifs live.

Le développement est à un stade de prototype expérimental. Pour les tests initiaux, les outils suivants sont proposés : tuxtape-cve-parser pour analyser les informations sur les vulnérabilités et construire une base de données de correctifs ; tuxtape-server avec une implémentation de l'interface gRPC pour les services générant des correctifs ; tuxtape-kernel-builder pour compiler le noyau dans une configuration donnée et former un profil de compilation ; tuxtape-dashboard — une interface en ligne de commande pour réviser et créer des correctifs live basés sur des correctifs sources obtenus à partir de tuxtape-server.

Source : opennet.ru
