Sąvoka «Livepatch nėra jokia naujiena ir ji net nebuvo įdiegta Linux kelerius metus, nes Red Hat, Oracle, Canonical ir SUSE yra keletas tų, kurie įdiegė šią technologiją savo platinimui.
Ir nors jie įsitvirtino kaip puikus sprendimas, tai Paprastai tai priklauso nuo uždarų procesų kuriant pleistrus, riboja skaidrumą ir prisitaikomumą. Ankstesni atvirojo kodo projektai, tokie kaip „Gentoo“ elivepatch ir „Debian“ linux-livepatching, pasižymėjo ilgais neveiklumo arba sąstingio laikotarpiais prototipų fazėse.
Susidūrė su šia problemų serija kurie vis dar susiduria su aktyvių Linux branduolio pataisų generavimo, kompiliavimo, diegimo ir diegimo procesu, TuxTape pristato save kaip sprendimą nepriklausomas, sukurtas taip, kad būtų pritaikytas bet kuriai Linux branduolio versijai, neapsiribojant kiekvienam platinimui būdingais paketais.
TuxTape, tiesioginio pataisymo sprendimas sistemoje Linux
TuxTape yra naujas sprendimas kad leidžia administratoriams sistemų įdiegti savo infrastruktūrą sukurti, surinkti ir įdiegti tiesioginius Linux branduolio pataisymus.
Pagrindinis tikslas iš TuxTape visapusiška sistema, kuri automatizuoja gyvų pataisų kūrimą ir pristatymą. Jo architektūra leidžia generuoti pataisas, suderinamas su esamais įrankiais, tokiais kaip Red Hat kpatch, SUSE kGraft, Oracle Ksplice ir kitais universaliais sprendimais.
Lopai Jie įgyvendinami kaip branduolio moduliai, pakeičiantys esamas funkcijas naudojant ftrace posistemį, kuris nukreipia vykdymą į naujas modulyje įtrauktas funkcijas. Be to, TuxTape turi galimybę sekti pažeidžiamumo naujinimus, paskelbtus linux-cve-announce adresų sąraše ir Git saugyklose.

Naudodama šią informaciją, sistema klasifikuoja pažeidžiamumą pagal sunkumą, įvertina kiekvieno pataiso pritaikomumą atlikdama išsamią branduolio kūrimo profilio analizę ir atmeta tas pataisas, kurios neturi įtakos tikslinei aplinkai. Šis selektyvus metodas užtikrina, kad būtų įgyvendinti tik svarbūs pakeitimai, sumažinant riziką ir optimizuojant našumą.
Projekto komponentai ir architektūra
„TuxTape“ rinkinys Jį sudaro keli integruoti įrankiai nuo aptikimo iki tiesioginio pataisymo:
- Pažeidžiamumo stebėjimo sistema: Jis yra atsakingas už naujų grėsmių aptikimą ir įrašymą realiuoju laiku.
- Duomenų bazės generatorius: Ji yra atsakinga už informacijos apie pataisas ir pažeidžiamumą struktūrinėje duomenų bazėje teikimą.
- Metaduomenų serveris su gRPC: Tvarko komunikaciją ir paslaugų, susijusių su pataisų generavimu, koordinavimą.
- Siuntimo sistema ir branduolio konstrukcija: Sukuriant išsamų kompiliavimo profilį, palengvinamas branduolio kompiliavimas pagal konkrečias konfigūracijas.
- Generatorius ir pataisų archyvas: Įprastus pataisymus paverčia dinamiškai įkeliamais branduolio moduliais.
- Klientas galutiniams šeimininkams: Leidžia priimti ir pritaikyti pleistrus gamybos sistemoms.
- Interaktyvi sąsaja (prietaisų skydelis): suteikia vartotojui administravimo konsolę, kurioje jis gali peržiūrėti, tvarkyti ir kurti tiesioginius pataisymus pagal gautus šaltinius.
Verta paminėti, kad TuxTape projektas ir plėtra šiuo metu yra eksperimentinio prototipo fazėje, todėl šiuo metu jis rekomenduojamas tik pirminiam bandymui su skirtingais jo komponentais.
Tiems, kurie domisi projekto testavimu, šiuo metu rekomenduojama išbandyti tik tam tikrus įrankius, tokius kaip:
- tuxtape-cve-parser: Analizuoja pažeidžiamumo informaciją ir sukuria pataisų duomenų bazę.
- Tuxtape serveris: Įdiegia gRPC sąsają pataisų generavimui ir platinimui.
- tuxtape-kernel-builder: Jis yra atsakingas už tam tikros konfigūracijos branduolio kūrimą ir atitinkamo kompiliavimo profilio generavimą.
- smokingas-prietaisų skydelis: suteikia konsolės sąsają, skirtą peržiūrėti ir kurti tiesiogines pataisas pagal gautas šaltinio pataisas.
Galiausiai svarbu paminėti, kad projektas kuriamas Rust ir platinamas pagal Apache 2.0 licenciją. Daugiau informacijos arba šaltinio kodą galite rasti iš šią nuorodą.