La compagnia assicurativa GEICO ha pubblicato una versione preliminare di TuxTape, un toolkit che consente di distribuire la propria infrastruttura per creare, assemblare e distribuire patch live per il kernel Linux. Le patch live consentono di applicare correzioni al kernel Linux al volo, senza riavviare o arrestare il sistema. Il codice del progetto è scritto in Rust e distribuito con licenza Apache 2.0.
Aziende come Red Hat, Oracle, Canonical e SUSE forniscono patch live con correzioni di vulnerabilità per le loro distribuzioni, ma sono aperti solo strumenti di basso livello per lavorare con le patch e le patch stesse vengono create a porte chiuse. Le distribuzioni Gentoo e Debian hanno provato a sviluppare i progetti aperti elivepatch e linux-livepatching, ma il primo è stato abbandonato per 6 anni, mentre il secondo è fermo alla fase di creazione di un prototipo di prova.
TuxTape si propone di fornire un proprio sistema per la creazione e la distribuzione di patch live, indipendente da fornitori terzi e adattabile a qualsiasi kernel Linux, non solo ai pacchetti kernel specifici di una distribuzione. TuxTape può generare patch live compatibili con il toolkit kpatch sviluppato da Red Hat (oltre a kpatch, altri strumenti simili includono kGraft di SUSE, Ksplice di Oracle e l'universale livepatch). Le patch sono formate da moduli kernel caricabili che sostituiscono le funzioni nel kernel, utilizzando il sottosistema ftrace per reindirizzare alle nuove funzioni incluse nel modulo.

TuxTape può tenere traccia delle informazioni sulle correzioni delle vulnerabilità del kernel Linux pubblicate nella mailing list linux-cve-announce e nel repository Git, classificare le vulnerabilità in base alla gravità, determinare l'applicabilità ai kernel Linux supportati e generare patch live basate sulle patch regolari per i rami del kernel LTS. L'applicabilità delle patch sorgente viene valutata mediante la profilazione delle build del kernel. Le patch con vulnerabilità che non interessano il kernel di destinazione vengono ignorate.
TuxTape include un sistema per tracciare le nuove vulnerabilità del kernel, un generatore di patch e database di vulnerabilità, un server per l'archiviazione dei metadati, un sistema di distribuzione della build del kernel, un generatore di kernel, un generatore di patch, un archivio di patch, un client per ricevere patch per gli host finali e un'interfaccia interattiva per gestire la generazione di patch live.

Lo sviluppo è nella fase di prototipo sperimentale. Per i test iniziali, si consiglia quanto segue: tuxtape-cve-parser per analizzare le informazioni sulle vulnerabilità e creare un database con patch; tuxtape-server con implementazione dell'interfaccia gRPC per servizi di generazione di patch; tuxtape-kernel-builder per compilare il kernel in una data configurazione e generare un profilo di compilazione; tuxtape-dashboard è un'interfaccia console per la revisione e la creazione di patch live basate sulle patch sorgente ricevute da tuxtape-server.

Fonte: opennet.ru
