Le concept de «Livepatch n'a rien de nouveau et cela n'a même pas été implémenté sous Linux depuis quelques années, puisque Red Hat, Oracle, Canonical et SUSE font partie de ceux qui ont implémenté cette technologie pour leurs distributions.
Et bien qu’ils se soient imposés comme une excellente solution, cette Cela dépend généralement de processus fermés dans la création des patchs, limiter la transparence et l'adaptabilité. Les projets open source précédents, tels que elivepatch de Gentoo et linux-livepatching de Debian, ont été marqués par de longues périodes d'inactivité ou de stagnation dans leurs phases de prototype.
Face à cette série de problèmes qui sont encore confrontés au processus de génération, de compilation, de déploiement et d'installation de correctifs actifs du noyau Linux, TuxTape se présente comme une solution indépendant, conçu pour être adaptable à n'importe quelle version du noyau Linux, sans se limiter à des packages spécifiques à chaque distribution.
TuxTape, une solution pour le live patching sous Linux
TuxTape, est une nouvelle solution Quoi permet aux administrateurs des systèmes implémentez votre propre infrastructure pour créer, assembler et déployer des correctifs dynamiques sur le noyau Linux.
L'objectif principal de TuxTape est d'offrir un système complet qui automatise la création et la livraison de correctifs en direct. Son architecture permet de générer des correctifs compatibles avec les outils existants tels que kpatch de Red Hat, kGraft de SUSE, Ksplice d'Oracle et d'autres solutions universelles.
Les patchs Ils sont implémentés sous forme de modules de noyau qui remplacent les fonctions existantes en utilisant le sous-système ftrace, qui redirige l'exécution vers les nouvelles fonctions incluses dans le module. De plus, TuxTape a la capacité de suivre les mises à jour de vulnérabilité publiées sur la liste de diffusion linux-cve-announce et dans les référentiels Git.

À l’aide de ces informations, le système classe les vulnérabilités par gravité, évalue l’applicabilité de chaque correctif grâce à une analyse détaillée du profil de build du noyau et élimine les correctifs qui n’affectent pas l’environnement cible. Cette approche sélective garantit que seuls les changements pertinents sont mis en œuvre, minimisant ainsi les risques et optimisant les performances.
Composants et architecture du projet
Le kit TuxTape Il se compose de plusieurs outils intégrés allant de la détection au live patching :
- Système de suivi des vulnérabilités : Il est chargé de détecter et d’enregistrer les nouvelles menaces en temps réel.
- Générateur de base de données : Il est chargé de fournir des informations sur les correctifs et les vulnérabilités dans une base de données structurée.
- Serveur de métadonnées avec gRPC : Gère la communication et la coordination des services liés à la génération de correctifs.
- Système de répartition et construction du noyau : Facilite la compilation du noyau sur des configurations spécifiques en générant un profil de compilation détaillé.
- Générateur et fichier patch : Transforme les correctifs réguliers en modules de noyau chargeables dynamiquement.
- Client pour les hôtes finaux : Permet la réception et l'application de correctifs sur les systèmes de production.
- Interface interactive (Tableau de bord): Fournit une console d'administration à l'utilisateur où il peut consulter, gérer et créer des correctifs en direct en fonction des sources reçues.
Il convient de mentionner que le projet et le développement de TuxTape sont actuellement en phase de prototype expérimental, il n'est donc pour le moment recommandé que pour des tests initiaux avec ses différents composants.
Pour ceux qui souhaitent tester le projet, les tests sont actuellement recommandés uniquement sur des outils spécifiques tels que :
- analyseur tuxtape-cve : Analyse les informations de vulnérabilité et crée une base de données de correctifs.
- serveur tuxtape : Implémente une interface gRPC pour la génération et la distribution de correctifs.
- constructeur de noyau tuxtape : Il est responsable de la construction du noyau avec une configuration donnée et de la génération du profil de compilation correspondant.
- tableau de bord tuxtape: Fournit une interface de console pour examiner et créer des correctifs en direct basés sur les correctifs sources reçus.
Enfin, il est important de mentionner que le projet est développé en Rust et est distribué sous la licence Apache 2.0. Vous pouvez consulter plus d'informations ou le code source de celui-ci, à partir de le lien suivant.