Das Konzept von "Livepatch ist nichts Neues und es wurde seit einigen Jahren nicht einmal in Linux implementiert, da Red Hat, Oracle, Canonical und SUSE einige von denen sind, die diese Technologie für ihre Distributionen implementiert haben.
Und obwohl sie sich als hervorragende Lösung etabliert haben, Es kommt meist auf geschlossene Prozesse an bei der Erstellung der Patches, Einschränkung der Transparenz und Anpassungsfähigkeit. Frühere Open-Source-Projekte wie Elivepatch von Gentoo und Linux-Livepatching von Debian waren in ihren Prototypphasen durch lange Phasen der Inaktivität oder Stagnation gekennzeichnet.
Angesichts dieser Reihe von Problemen die noch immer vor dem Prozess der Generierung, Kompilierung, Bereitstellung und Installation aktiver Linux-Kernel-Patches stehen, TuxTape präsentiert sich als Lösung unabhängig, so konzipiert, dass es an jede Version des Linux-Kernels anpassbar ist, ohne auf Pakete beschränkt zu sein, die für jede Distribution spezifisch sind.
TuxTape, eine Lösung für Live-Patching in Linux
TuxTape ist eine neue Lösung erlangte das erlaubt Administratoren von Systemen Implementieren Sie Ihre eigene Infrastruktur um Live-Patches für den Linux-Kernel zu erstellen, zusammenzustellen und bereitzustellen.
Das Hauptziel von TuxTape bietet ein umfassendes System, das die Erstellung und Bereitstellung von Live-Patches automatisiert. Seine Architektur ermöglicht die Generierung von Patches, die mit vorhandenen Tools wie kpatch von Red Hat, kGraft von SUSE, Ksplice von Oracle und anderen universellen Lösungen kompatibel sind.
Die patches Sie werden als Kernelmodule implementiert, die vorhandene Funktionen ersetzen durch Verwendung des Ftrace-Subsystems, das die Ausführung auf die neuen im Modul enthaltenen Funktionen umleitet. Darüber hinaus kann TuxTape Updates zu Sicherheitslücken verfolgen, die auf der Mailingliste „linux-cve-announce“ und in Git-Repositories gepostet werden.

Anhand dieser Informationen klassifiziert das System die Schwachstellen nach Schweregrad, beurteilt die Anwendbarkeit jedes Patches durch eine detaillierte Analyse des Kernel-Build-Profils und verwirft jene Fixes, die die Zielumgebung nicht beeinträchtigen. Dieser selektive Ansatz stellt sicher, dass nur relevante Änderungen implementiert werden, wodurch das Risiko minimiert und die Leistung optimiert wird.
Projektkomponenten und Architektur
Das TuxTape Kit Es besteht aus mehreren integrierten Tools von der Erkennung bis zum Live-Patching:
- System zur Schwachstellenverfolgung: Dieser ist für die Erkennung und Aufzeichnung neuer Bedrohungen in Echtzeit zuständig.
- Datenbankgenerator: Seine Aufgabe besteht darin, Informationen zu Patches und Schwachstellen in einer strukturierten Datenbank bereitzustellen.
- Metadatenserver mit gRPC: Verwaltet die Kommunikation und Koordination von Diensten im Zusammenhang mit der Patch-Generierung.
- Dispatch-System und Kernel-Aufbau: Erleichtert die Kernelkompilierung bei bestimmten Konfigurationen durch die Generierung eines detaillierten Kompilierungsprofils.
- Generator und Patchdatei: Wandelt reguläre Patches in dynamisch ladbare Kernelmodule um.
- Client für Endhosts: Ermöglicht den Empfang und die Anwendung von Patches auf Produktionssystemen.
- Interaktive Schnittstelle (Dashboard): Bietet dem Benutzer eine Verwaltungskonsole, wo er basierend auf den empfangenen Quellen Live-Patches überprüfen, verwalten und erstellen kann.
Erwähnenswert ist, dass sich das TuxTape-Projekt und die Entwicklung derzeit in einer experimentellen Prototypphase befinden. Daher wird es derzeit nur für erste Tests mit seinen verschiedenen Komponenten empfohlen.
Für diejenigen, die das Projekt testen möchten, wird derzeit nur das Testen mit bestimmten Tools empfohlen, wie zum Beispiel:
- Tuxtape-CVE-Parser: Analysiert Informationen zu Schwachstellen und erstellt eine Patch-Datenbank.
- Tuxtape-Server: Implementiert eine gRPC-Schnittstelle zur Patch-Generierung und -Verteilung.
- Tuxtape-Kernel-Builder: Es ist dafür verantwortlich, den Kernel mit einer bestimmten Konfiguration zu erstellen und das entsprechende Kompilierungsprofil zu generieren.
- Tuxtape-Armaturenbrett: Bietet eine Konsolenschnittstelle zum Überprüfen und Erstellen von Live-Patches basierend auf empfangenen Quell-Patches.
Abschließend ist es wichtig zu erwähnen, dass das Projekt in Rust entwickelt und unter der Apache 2.0-Lizenz vertrieben wird. Weitere Informationen oder den Quellcode hierzu finden Sie unter den folgenden Link.