Daugiamilijoninė gynybos strategija paprastai remiasi prielaida, kad pagrindinis operacinės sistemos branduolys yra statiškas, neįveikiamas skliautas. Mes praleidžiame metus tobulindami ugniasienės taisykles, tapatybės teikėjus ir galinių įrenginių aptikimo skriptus, tačiau architektūrinis pagrindas dažnai išlieka trapiausias komponentas. „Linux“ naudoja optimizavimą, vadinamą „copy-on-write“ (COW), kad efektyviai valdytų atmintį. Ši sistema užtikrina, kad keli procesai dalijasi ta pačia fizine atmintimi, kol vienam iš jų prireikia ją pakeisti. Tuo metu branduolys turėtų sukurti privačią kopiją, kad pakeitimas nepaveiktų kitų vartotojų. CVE-2026-31635 atveju šis pagrindinis pažadas žlugo.
Paskutines 48 valandas praleidau peržiūrėdamas „DirtyDecrypt“ (dar žinomo kaip „DirtyCBC“) koncepcijos įrodymo (PoC) kodą. Šis pažeidžiamumas yra vadovėlinis architektūrinio paradokso pavyzdys. Tas pats mechanizmas, sukurtas tam, kad „Linux“ branduolys būtų greitas ir efektyviai naudotų atmintį, leido neprivilegijuotam vartotojui perrašyti „root“ savininkui priklausančius failus. Tai jau trečioji didelė šios specifinės atminties sugadinimo logikos variacija, kurią matome per pastaruosius mėnesius. Tai primena laivą, pastatytą su korpusu, kuris yra neįveikiamas iš išorės, bet ištirpsta, kai paliečia savo vidinį kurą.
Defektas egzistuoja rxgk_decrypt_skb funkcijoje. Šis kodas apdoroja gaunamus lizdų buferius tinklo dėklo priėmimo pusėje. Kai branduolys apdoroja šiuos buferius, jis tvarko atminties puslapius, kuriais kartais dalijamasi su kitų procesų puslapių talpykla (page cache). Normaliomis sąlygomis „Linux“ branduolys suaktyvina „copy-on-write“ operaciją prieš bet kokį rašymą į bendrinamą puslapį. Tai neleidžia vieno proceso duomenims nutekėti į kito proceso atminties erdvę.
„Zellic“ tyrėjai nustatė, kad rxgk_decrypt_skb funkcijai trūko šios COW apsaugos. Kai branduolys iššifruoja duomenis į buferį, kuris atsitiktinai yra bendrinamas puslapis, jis rašo iššifruotą turinį tiesiai į fizinę atmintį, prieš tai nesukūręs privačios kopijos. Tai apeina standartines failų sistemos teises ir atminties apsaugą. Užpuolikas gali susieti jautrų failą, pavyzdžiui, /etc/shadow arba SUID dvejetainį failą, su savo atminties erdve ir tada naudoti pažeidžiamą tinklo kelią, kad priverstų branduolį įrašyti duomenis į to failo puslapių talpyklą. Kai branduolys išsaugo puslapių talpyklą į diską, pakeitimas tampa nuolatinis.
„DirtyDecrypt“ nėra izoliuotas incidentas. Tai pažeidžiamumų šeimos, prasidėjusios nuo „Copy Fail“ (CVE-2026-31431) 2026 m. balandį, palikuonis. „Theori“ tyrėjai pirmieji nustatė, kad branduolio kriptografinė lizdų sąsaja turėjo panašių logikos klaidų. Po savaitės atsirado „Dirty Frag“. Po to sekė „Fragnesia“, kuri buvo nutaikyta į XFRM posistemį. Kiekvienas iš šių pažeidžiamumų turi tą pačią pagrindinę priežastį: nesugebėjimą patikrinti puslapio nuosavybės prieš atliekant branduolio lygio rašymą.
Ši atskleidimų seka išryškina sisteminę problemą, kaip „Linux“ branduolys tvarko šiuolaikinius tinklo atminties optimizavimus. „MSG_SPLICE_PAGES“ ir kitų didelio našumo „zero-copy“ mechanizmų įvedimas sukūrė sudėtingumą, kurį dabartinė COW infrastruktūra sunkiai sureguliuoja. Tyrėjas, žinomas kaip „0xdeadbeefnetwork“, pažymėjo, kad kai tik vieno varianto pataisa patenka į viešąjį medį, kito varianto pavertimas ginklu tampa standartiniu pratimu saugumo profesionalams. Šis spartus „n-day“ kūrimo ciklas primena, kad vieno posistemio pataisa negarantuoja kito, naudojančio panašią logiką, saugumo.
CVE-2026-31635 poveikis labai priklauso nuo branduolio konfigūracijos. Pažeidžiamumui reikalinga įjungta CONFIG_RXGK parinktis. Štai kodėl tokie platinimo paketai kaip „Fedora“, „Arch Linux“ ir „openSUSE Tumbleweed“ patiria didesnę riziką. Šios distribucijos dažnai teikia pirmenybę naujausioms funkcijoms ir platesniam aparatinės įrangos palaikymui, įskaitant specializuotus tinklo ir kriptografijos modulius, kurie yra išjungti konservatyvesniuose įmonių leidimuose, pavyzdžiui, „RHEL“ ar „Debian Stable“.
Debesijos aplinkose šis pažeidžiamumas kelia didelę riziką konteinerių izoliacijai. Jei darbinis mazgas (worker node) naudoja pažeidžiamą branduolį, kompromituotas konteineris gali naudoti „DirtyDecrypt“ primityvą, kad ištrūktų iš savo vietinės aplinkos. Perrašydamas bendrinamų dvejetainių failų ar branduolio struktūrų puslapių talpyklą, užpuolikas gali pereiti iš apriboto „pod“ prie pilnos „root“ prieigos pagrindiniame kompiuteryje. Tai faktiškai sugriauna kelių nuomininkų (multi-tenant) saugumo modelį, kuriuo „Kubernetes“ ir kiti koordinatoriai remiasi darbo krūvių izoliacijai.
Branduolio spragų atskleidimo apimtys privertė persvarstyti, kaip valdome „Linux“ saugumą. Sasha Levin, žymus branduolio prižiūrėtojas, neseniai pasiūlė branduolio „išjungiklį“ (killswitch). Šis įrankis leidžia administratoriui išjungti specifinę branduolio funkciją vykdymo metu be perkrovimo. Jei specifinėje tinklo funkcijoje aptinkamas „zero-day“ pažeidžiamumas, pavyzdžiui, „DirtyDecrypt“, administratorius gali nurodyti branduoliui nustoti vykdyti tą funkciją ir vietoj jos grąžinti fiksuotą vertę. Tai veikia kaip avarinis uždarymo vožtuvas laivo korpuse, kol ruošiama nuolatinė pataisa.
Kai kurie kūrėjai nerimauja dėl paties „išjungiklio“ saugumo pasekmių. Jei užpuolikas įgyja pakankamai privilegijų įjungti „išjungiklį“, jis teoriškai galėtų išjungti saugumo modulius ar audito funkcijas. Tačiau dabartinė „Linux“ ekosistemos realybė yra tokia, kad pataisų kūrimas yra per lėtas šiuolaikiniam eksploatavimo priemonių kūrimo greičiui. „Išjungiklis“ suteikia reaktyvią priemonę organizacijoms, kurios negali laukti pilno naujos branduolio versijos regresijos testo. Tai pragmatiškas atsakas į faktą, kad mūsų programinė įranga tampa vis sudėtingesnė, kad būtų be klaidų.
„Rocky Linux“ pasirinko kitokį požiūrį, pristatydama specialią saugumo saugyklą. Tradiciškai žemesnės grandies distribucijos laukia, kol aukštesnės grandies teikėjai išleis patikrintą pataisą, prieš pateikdami atnaujinimus savo vartotojams. Tai sukuria pažeidžiamumo langą, kai PoC yra viešas, tačiau oficialus atnaujinimas įstrigęs kokybės užtikrinimo (QA) cikle. Naujoji „Rocky Linux“ saugumo saugykla yra pasirenkama funkcija, kuri pateikia skubias pataisas iškart, kai jos tampa prieinamos, net jei jos dar nepasiekė pagrindinio branduolio medžio.
Šis žingsnis yra kontraversiškas, nes jis pažeidžia griežtą suderinamumą su aukštesne grandimi. Jei „Rocky Linux“ komanda ištaiso klaidą, o pagrindiniai prižiūrėtojai vėliau pasirenka kitokią pataisą, du branduoliai išsiskirs. Prižiūrėtojai pripažįsta šią riziką, tačiau mano, kad jų vartotojų apsauga yra svarbesnė už tobulą versijų suderinimą. Tai atspindi platesnį pramonės poslinkį teikti pirmenybę lankstumui aktyvaus išnaudojimo akivaizdoje. Administratoriams tai reiškia pasirinkimą tarp tradicinio išleidimo ciklo stabilumo ir agresyvesnės pataisų strategijos atsparumo.
Gynyba nuo CVE-2026-31635 reikalauja daugiau nei tik standartinio atnaujinimo. Organizacijos pirmiausia turi patikrinti, ar jų sistemos yra pažeidžiamos. Branduolio konfigūracijos patikrinimas dėl CONFIG_RXGK yra pirmasis žingsnis. Jei modulis įjungtas, bet nereikalingas jūsų darbo krūviui, jo išjungimas per branduolio modulių „juodąjį sąrašą“ (denylist) yra efektyviausia neatidėliotina priemonė. Kai kuriais atvejais tai visiškai pašalina atakos paviršių be poreikio perkrauti sistemą.
Žiūrint iš rizikos perspektyvos, turėtumėte daryti prielaidą, kad vietiniai vartotojai turi galimybę įvykdyti šį PoC, jei jie turi prieigą prie apvalkalo (shell). Dėl to būtina griežta /etc/ katalogo ir SUID dvejetainių failų stebėsena. Šiuolaikiniai saugumo įrankiai, stebintys puslapių talpyklos vientisumą, gali įspėti, jei procesas bando pakeisti tik skaitomus failus per netradicinius atminties kelius. Pataisų diegimas išlieka auksiniu standartu, tačiau kol jūsų parkas nebus atnaujintas, ribojantys „Seccomp“ profiliai ir „AppArmor“ politikos gali apriboti vietinių procesų galimybę sąveikauti su pažeidžiamomis tinklo funkcijomis.
Atlikite savo branduolio konfigūracijos auditą ir patikrinkite, ar jūsų distribucija išleido CVE-2026-31635 pataisą. Organizacijos, naudojančios „Arch“ arba „Fedora“, turėtų nedelsdamos teikti pirmenybę šiems atnaujinimams. Jei valdote didelį „Linux“ serverių parką, apsvarstykite ilgalaikes pasekmes naudojant branduolius su plačiais funkcijų rinkiniais ir įvertinkite, ar jūsų saugumo būsenai labiau tiktų labiau sugriežtinta, minimali branduolio konfigūracija.
Atsakomybės apribojimas: Šis straipsnis skirtas tik informaciniams ir edukaciniams tikslams. Jis nepakeičia profesionalaus kibernetinio saugumo audito ar incidentų valdymo paslaugų. Pateiktos techninės detalės skirtos padėti administratoriams suprasti rizikas ir įgyvendinti būtinas gynybos priemones.



Pašto ir debesies saugojimo sprendimas suteikia galingiausias saugaus keitimosi duomenimis priemones, užtikrinančias jūsų duomenų saugumą ir privatumą.
/ Sukurti nemokamą paskyrą