Prehľad situácie
Vo verejne dostupnom komponente jadra Linuxu — dátovej rovine (datapath) Open vSwitch (OVS) — bola zverejnená zraniteľnosť umožňujúca bežnému, neprivilegovanému lokálnemu používateľovi eskalovať oprávnenia až na root na širokom spektre predvolene nakonfigurovaných distribúcií. Zraniteľnosť s prezývkou OVSwrap objavil bezpečnostný výskumník Asim Manizada a verejne ju zdokumentoval 28. júla 2026 na mailing liste oss-security, po tom, čo ju 19. júna 2026 nahlásil tímu bezpečnosti jadra Linuxu (security@kernel.org) a správcom OVS.
Súčasťou zverejnenia je aj funkčný proof-of-concept (PoC) exploit s vopred pripravenými záznamami pre približne 800 konkrétnych zostavení (buildov) jadra pre architektúru x86-64, čo výrazne znižuje bariéru na jeho praktické zneužitie.
Technické detaily
| Parameter | Hodnota |
|---|---|
| CVE | CVE-2026-64531 |
| CVSS skóre | 7.2 podľa jedného zdroja / 7.8 podľa väčšiny zdrojov (Local, nízka zložitosť, nízke požadované oprávnenia, bez interakcie používateľa) |
| Názov | OVSwrap |
| Komponent | Kernelová dátová rovina (datapath) Open vSwitch |
| Typ chyby | Pretečenie/pretočenie (wraparound) celočíselnej hodnoty vedúce k poškodeniu pamäte |
| Objaviteľ | Asim Manizada |
| Nahlásené | 19. júna 2026 |
| Zverejnené | 28. júla 2026 |
Chyba sa nenachádza v userspace démone ovs-vswitchd, ale priamo v kernelovej dátovej rovine OVS. Podľa autora útočník nepotrebuje existujúci OVS bridge, spustený ovs-vswitchd ani oprávnenie CAP_NET_ADMIN na úrovni hostiteľa.
Ako chyba funguje
Open vSwitch prijíma od userspace zoznam sieťových „akcií“ a prevádza ich do interného formátu uloženého ako Netlink atribúty. Dĺžka každého vnoreného atribútu (nla_len) je pritom obmedzená len na 16 bitov, čo umožňuje maximálne 65 535 bajtov na jeden vnorený atribút.
Chybná logika existovala v kóde 13 rokov bez toho, aby bola zneužiteľná — chránil ju totiž limit 32 KiB na celkovú veľkosť generovaného reťazca akcií. V marci 2025 bol tento limit odstránený, pretože spôsoboval nepredvídateľné zlyhania, okrem iného vo veľkých nasadeniach OpenStacku. Táto zmena však sprístupnila pôvodnú, dovtedy neškodnú chybu — diskusia k danej úprave kódu sa v tom čase venovala len spoľahlivosti a zlyhaniam na strane používateľov, nie bezpečnostným dôsledkom odstránenia limitu.
Útočník následne odošle akciu typu CLONE obsahujúcu stovky vnorených podakcií conntrack. Na architektúre x86-64 sa každá z nich v jadre rozbaľuje na 164 bajtov, čím sa celková veľkosť vnoreného atribútu dostane nad hranicu 65 535 bajtov. Pri zápise tejto hodnoty do 16-bitového poľa dĺžky dôjde k jej pretočeniu (integer wraparound).
Následný kód dôveruje takto poškodenej hodnote dĺžky a pokračuje v parsovaní dát z oblasti, ktorú už kontroluje útočník prostredníctvom dát conntrack, kde naň čakajú podvrhnuté OVS akcie. Keďže cieľové miesto je deterministické v rámci toho istého súvislého bufferu, útočník nepotrebuje žiadne „heap grooming“ (manipuláciu s usporiadaním pamäte haldy) — autor preto hovorí o chybe s „spoľahlivosťou logickej chyby“, nie o typickom nestabilnom heap exploite.
Zverejnený exploit reťazí tri primitíva vyplývajúce z tohto pretečenia: únik ukazovateľa jadra cez podvrhnutú akciu OUTPUT, ľubovoľné čítanie pamäte jadra cez podvrhnutú akciu SET pre tunelovanie a cielené zníženie hodnoty cez deštrukciu podvrhnutého ukazovateľa tun_dst. Tieto primitíva použije na nájdenie prihlasovacích údajov (credentials) hostiteľského procesu a na moderných jadrách vynuluje fsuid a fsgid.
Postihnuté systémy a exploatabilita
Zraniteľný je akýkoľvek pred-opravný kernel, ktorý prevzal zmenu z marca 2025 — priamo alebo cez spätné portovanie (backport) v distribučnom jadre. Testovací (nie vyčerpávajúci) prehľad autora zistil zneužiteľnosť v predvolenej konfigurácii na týchto distribúciách: AlmaLinux 9 a 10, Alpine 3.22 až 3.24, Amazon Linux 2023, Arch, CentOS Stream 9 a 10, Debian 12 a 13, Fedora 42 až 44, Gentoo, Kali 2026.1, Linux Mint 22.3, NixOS, openSUSE Tumbleweed, Pop!_OS, Rocky Linux 9 a 10 a Ubuntu 22.04.
Na testovanom Ubuntu 24.04 blokoval priame vytvorenie namespace nástroj AppArmor, útočník ho však vedel obísť pomocou aa-exec -p trinity z dodaného PoC. Predvolené Ubuntu 26.04 zablokovalo bežnú cestu útoku cez neprivilegovaného používateľa; po vypnutí obmedzenia AppArmor pre user namespaces sa aj tento systém stal zraniteľným.
Naopak, testované Amazon Linux 2, Debian 11, Rocky Linux 8 a Ubuntu 20.04 obsahujú staršie cesty v kóde a touto konkrétnou cestou zneužiteľné neboli.
Dôležité upozornenie: prázdny výstup príkazu lsmod neznamená, že systém je bezpečný — ak je modul openvswitch nainštalovaný, ale nenačítaný, môže sa automaticky načítať už len tým, že sa niekto pokúsi vyhľadať jeho meno Generic Netlink rodiny.
Riziko je obzvlášť vysoké na zdieľaných serveroch s viacerými používateľmi alebo nedôveryhodnými workloadmi — „lokálny používateľ“ v tomto kontexte môže byť útočník, ktorý sa už predtým dostal na jeden z hostovaných webov cez nesúvisiacu chybu, a OVSwrap mu následne umožní eskalovať z kompromitácie jedného webu na kompromitáciu celého serveru.
Mitigácie a odporúčania
- Nainštalujte opravené jadro, ak je pre vašu distribúciu už k dispozícii. Prvé opravené upstream stabilné verzie sú 5.15.212, 6.1.178, 6.6.145, 6.12.97, 6.18.40 a 7.1.5. Radové verzie 6.13 až 6.17, 6.19 a 7.0 sú už na konci životného cyklu a upstream opravu nedostanú — je preto potrebné prejsť na podporovanú vetvu.
- Overte si informácie priamo u dodávateľa distribúcie — uvedené upstream čísla verzií samy osebe nestačia, keďže distribučné jadrá obsahujú vlastné spätné porty a úpravy.
- Ak Open vSwitch nepotrebujete, najrýchlejším dočasným opatrením je zablokovať načítanie modulu:
echo 'install openvswitch /bin/false' > /etc/modprobe.d/ovswrap.conf
Toto opatrenie blokuje len budúce pokusy o načítanie modulu — ak je modul už načítaný v pamäti, treba ho odstrániť alebo systém reštartovať.
- Zvážte vypnutie neprivilegovaných user namespaces, čím sa uzavrie bežná cesta útoku pre lokálneho neprivilegovaného používateľa. Toto opatrenie však nezastaví kontajner alebo iný proces, ktorý už má
CAP_NET_ADMINnad sieťovým namespace kontrolovaným útočníkom — autor označuje túto cestu za teoreticky dosiahnuteľnú, hoci ju v zverejnenom PoC nedemonštroval. - Súčasťou PoC repozitára je aj núdzový BPF guard pre prostredia, ktoré musia mať aktívny OVS aj namespaces súčasne.
Zatiaľ nie je hlásené žiadne potvrdené zneužitie v reálnej prevádzke, no vzhľadom na verejnú dostupnosť plne funkčného exploitu s vysokou mierou spoľahlivosti odporúčame považovať nasadenie opravy alebo dočasnej mitigácie za urgentné, najmä na zdieľaných a multi-tenant serveroch.
Záver
OVSwrap je príkladom toho, ako zdanlivo nesúvisiaca zmena zameraná na spoľahlivosť (odstránenie limitu veľkosti kvôli zlyhaniam vo veľkých nasadeniach) môže po rokoch odhaliť starú, dovtedy neškodnú chybu a premeniť ju na spoľahlivo zneužiteľnú eskaláciu oprávnení na root. Nízka zložitosť útoku, absencia potreby špeciálnych oprávnení a existencia hotového PoC pre stovky konkrétnych zostavení jadra robia z tejto zraniteľnosti prioritu na okamžité záplatovanie, najmä na zdieľanej infraštruktúre a vo virtualizovaných/cloudových prostrediach, kde sa Open vSwitch bežne nasadzuje.
Zdroje
oss-security mailing list – OVSwrap (CVE-2026-64531): Linux kernel/OVS local root vulnerability
The Hacker News – New OVSwrap Linux Kernel Flaw Lets Local Users Gain Root via Open vSwitch
CloudLinux Blog – OVSwrap (CVE-2026-64531) local root exploit: mitigation guide