TuxTape, novi prijedlog za LivePatch na Linuxu

TuxTape

Koncept «Livepatch nije ništa novo a nije ni implementiran u Linux nekoliko godina, jer su Red Hat, Oracle, Canonical i SUSE neki od onih koji su implementirali ovu tehnologiju za svoje distribucije.

I iako su se etablirali kao odlično rješenje, ovo Obično zavisi od zatvorenih procesa u kreiranju zakrpa, ograničavanje transparentnosti i prilagodljivosti. Prethodni projekti otvorenog koda, kao što su Gentoo elivepatch i Debianov linux-livepatching, bili su obilježeni dugim razdobljima neaktivnosti ili stagnacije u svojim prototipskim fazama.

Suočen sa ovim nizom problema koji se još uvijek suočavaju s procesom generiranja, kompajliranja, postavljanja i instaliranja aktivnih zakrpa za jezgro Linuxa, TuxTape se predstavlja kao rješenje neovisno, dizajnirano da bude prilagodljivo bilo kojoj verziji Linux kernela, bez ograničenja na pakete specifične za svaku distribuciju.

TuxTape, rješenje za zakrpe uživo u Linuxu

TuxTape, je novo rješenje Que dozvoljava administratorima sistema implementirajte vlastitu infrastrukturu za kreiranje, sastavljanje i implementaciju živih zakrpa na Linux kernel.

Glavni cilj TuxTape's je u ponudi sveobuhvatan sistem koji automatizuje kreiranje i isporuku živih zakrpa. Njegova arhitektura omogućava generisanje zakrpa kompatibilnih sa postojećim alatima kao što su Red Hat-ov kpatch, SUSE-ov kGraft, Oracle-ov Ksplice i druga univerzalna rešenja.

Zakrpe Implementirani su kao moduli kernela koji zamjenjuju postojeće funkcije korištenjem ftrace podsistema, koji preusmjerava izvršenje na nove funkcije uključene u modul. Dodatno, TuxTape ima mogućnost da prati ažuriranja ranjivosti objavljena na linux-cve-announce mailing listi iu Git repozitorijumima.

TuxTape livepatch

Koristeći ove informacije, sistem klasifikuje ranjivosti prema ozbiljnosti, procenjuje primenljivost svake zakrpe kroz detaljnu analizu profila izgradnje kernela i odbacuje one popravke koje ne utiču na ciljno okruženje. Ovaj selektivni pristup osigurava da se implementiraju samo relevantne promjene, minimizirajući rizik i optimizirajući performanse.

Komponente i arhitektura projekta

Komplet TuxTape Sastoji se od više integrisanih alata u rasponu od detekcije do zakrpanja uživo:

  • Sistem za praćenje ranjivosti: Ovo je odgovorno za otkrivanje i snimanje novih prijetnji u realnom vremenu.
  • Generator baze podataka: Odgovoran je za pružanje informacija o zakrpama i ranjivostima u strukturiranoj bazi podataka.
  • Server metapodataka sa gRPC: Upravlja komunikacijom i koordinacijom usluga vezanih za generiranje zakrpa.
  • Dispečerski sistem i konstrukcija kernela: Olakšava kompilaciju kernela na specifičnim konfiguracijama generiranjem detaljnog profila kompilacije.
  • Generator i arhiva zakrpa: Transformira obične zakrpe u dinamički učitave module kernela.
  • Klijent za krajnje hostove: Omogućava prijem i primjenu zakrpa na proizvodnim sistemima.
  • Interaktivni interfejs (kontrolna tabla): Pruža administrativnu konzolu za korisnika gdje može pregledati, upravljati i kreirati žive zakrpe na osnovu primljenih izvora.

Vrijedi napomenuti da je projekt i razvoj TuxTape trenutno u fazi eksperimentalnog prototipa, tako da se trenutno preporučuje samo za početno testiranje sa svojim različitim komponentama.

Za one koji su zainteresovani za testiranje projekta, testiranje se trenutno preporučuje samo na određenim alatima kao što su:

  • tuxtape-cve-parser: Analizira informacije o ranjivosti i gradi bazu podataka zakrpa.
  • tuxtape-server: Implementira gRPC sučelje za generiranje i distribuciju zakrpa.
  • tuxtape-kernel-builder: On je odgovoran za izgradnju kernela sa datom konfiguracijom i generisanje odgovarajućeg kompilacijskog profila.
  • tuxtape-dashboard: Pruža interfejs konzole za pregled i kreiranje živih zakrpa na osnovu primljenih izvornih zakrpa.

Na kraju, važno je napomenuti da se projekat razvija u Rustu i distribuira se pod licencom Apache 2.0. Možete pogledati više informacija ili izvorni kod ovoga, od sljedeći link.