Die Versicherungsgesellschaft GEICO hat eine erste Version des Tools TuxTape veröffentlicht, das es ermöglicht, eine eigene Infrastruktur für die Erstellung, das Zusammenstellen und die Bereitstellung von Live-Patches für den Linux-Kernel aufzubauen. Live-Patches ermöglichen es, Korrekturen im Linux-Kernel „on the fly“ anzuwenden, ohne das System neu starten oder anhalten zu müssen. Der Code des Projekts ist in Rust geschrieben und wird unter der Apache 2.0-Lizenz verbreitet.
Live-Patches zur Behebung von Sicherheitsanfälligkeiten werden von Unternehmen wie Red Hat, Oracle, Canonical und SUSE für ihre Distributionen bereitgestellt. Allerdings ist nur das niedrigstufige Tools zur Arbeit mit Patches offen zugänglich, während die eigentlichen Patches hinter verschlossenen Türen erstellt werden. Die Distributionen Gentoo und Debian haben versucht, offene Projekte wie elivepatch und linux-livepatching zu entwickeln, aber das erste befindet sich seit 6 Jahren im Stillstand, während das zweite in der Phase des Testprototyps ins Stocken geraten ist.
TuxTape zielt darauf ab, eine eigene Systemlösung zur Erstellung und Bereitstellung von Live-Patches zu organisieren, die unabhängig von Drittanbietern funktioniert und für alle Linux-Kernel anpassbar ist, nicht nur für Pakete mit dem Kernel bestimmter Distributionen. TuxTape kann Live-Patches erstellen, die mit dem von Red Hat entwickelten kpatch-Tool kompatibel sind (neben kpatch gibt es ähnliche Werkzeuge wie kGraft von SUSE, Ksplice von Oracle und den universellen livepatch). Die Patches werden in Form von ladbaren Kernmodulen erstellt, die Funktionen im Kernel ersetzen, indem sie die ftrace-Subsystem verwenden, um auf neue Funktionen zu verweisen, die im Modul aktiviert sind.

TuxTape kann Informationen über die Behebung von Sicherheitsanfälligkeiten im Linux-Kernel verfolgen, die in der mailingliste linux-cve-announce und im Git-Repository veröffentlicht werden, Sicherheitsanfälligkeiten nach Schweregrad priorisieren, die Anwendbarkeit auf die betreuten Linux-Kernel bestimmen und Live-Patches basierend auf regulären Patches für LTS-Branches des Kernels generieren. Die Anwendbarkeit der ursprünglichen Patches wird durch das Profiling der Kernel-Bauten bewertet. Patches mit nicht betroffenen Sicherheitsanfälligkeiten des Zielkernels werden ignoriert.
TuxTape umfasst ein System zur Verfolgung neuer Sicherheitsanfälligkeiten im Kernel, einen Patches- und Sicherheitsanfälligkeiten-Datenbank-Builder, Server um Metadaten zu speichern, ein Dispatch-System für den Kernel-Bau, einen Kernel-Compiler, einen Patch-Generator, ein Patch-Archiv, einen Client zum Abrufen von Patches für Endhosts und eine interaktive Schnittstelle zur Verwaltung der Erstellung von Live-Patches.

Die Entwicklung befindet sich in der Phase eines experimentellen Prototyps. Für die anfänglichen Tests wurden folgende Tools angeboten: tuxtape-cve-parser zur Analyse von Informationen über Schwachstellen und zum Aufbau einer Datenbank mit Patches; tuxtape-server mit einer Implementierung der gRPC-Schnittstelle für Patch-generierende Dienste; tuxtape-kernel-builder zum Bauen des Kernels in einer bestimmten Konfiguration und zur Erstellung eines Build-Profils; tuxtape-dashboard – eine Konsolenschnittstelle zur Überprüfung und Erstellung von Live-Patches basierend auf den aus tuxtape-server erhaltenen Quellpatches.

Quelle: opennet.ru
