Vývojáři X.Org vydali xorg-server 21.1.23 a XWayland 24.1.12, čímž bylo opravena hned devět zranitelností v X.Org X Server a XWayland. Opravy byly zveřejněny 2. června 2026; ve oficiálním katalogu X.Org jsou již k dispozici zdrojové archivy xorg-server-21.1.23 a xwayland-24.1.12.
Problémy se týkají jak klasického X.Org Serveru, tak XWaylandu — komponentu, skrze který běží X11 aplikace v rámci Wayland sezení. Proto je aktualizace důležitá nejen pro uživatele plného X11 sezení, ale také pro ty, kteří již přešli na Wayland, ale stále spouštějí staré X11 aplikace a hry.
CVE k datu zveřejnění ještě nebyly přiděleny, proto jsou v bulletině zranitelnosti uvedeny prostřednictvím identifikátorů ZDI-CAN a popisů problémů. Osm chyb bylo nahlášeno anonymním výzkumníkem přes TrendAI Zero Day Initiative, další objevil vývojář Red Hat a dlouholetý účastník X.Org Peter Hutterer.
Co bylo opraveno
Přetečení zásobníku při zpracování font alias.
Chyba vznikala kvůli nesouladu omezení v X serveru a libXfont2: server byl alokován zásobník o 256 bajtech, zatímco cílové jméno alias mohlo dosahovat až 1024 bajtů. Speciálně vytvořený font alias o délce od 257 do 1023 bajtů mohl vést k zápisu přes hranice zásobníku.Use-after-free v XSYNC miSyncDestroyFence().
Klient mohl vytvořit více fence spouštěčů, čekat na jejich vyřízení a pak přes druhé spojení zničit fence. To vedlo k přístupu k již uvolněné paměti a potenciálnímu volání uvolněného ukazatele funkce.Přetečení zásobníků v XKB Key Types.
V kódu pro kontrolu typů kláves CheckKeyTypes() nebyla dostatečně omezená nestandardní typy kláves podle XkbMaxShiftLevel. Výsledkem bylo, že klient mohl nastavit nadměrný počet přepínacích úrovní a vyvolat několik přetečení zásobníku. Zvlášť je poznamenáno, že problém je spojen s neúplnou opravou minulé zranitelnosti CVE-2025-26597.Přetečení zásobníku v XKB SetMap Request.
V funkci _XkbSetMapChecks() byl použit pevný pole mapWidths[256], indexované podle čísla typu klávesy. Při řízeném posunu klientem mohla pomocná funkce zapsat data přes hranice tohoto pole.Use-after-free v XSYNC FreeCounter().
Zranitelnost se projevovala při práci s více SyncCounter: jeden klient mohl očekávat spuštění spouštěčů, zatímco druhé připojení mohlo zničit odpovídající čítače, což vedlo k přístupu k uvolněné paměti.Use-after-free v XSYNC SyncChangeCounter().
Podobný scénář se týkal změny čítačů: při simultánní práci více připojení mohl klient získat přístup k již uvolněnému SyncCounter během změny jeho stavu.Čtení a zápis mimo buffer v GLX ChangeDrawableAttributes.
V handleru __glXDisp_ChangeDrawableAttributes() byla nesprávná kontrola velikosti požadavku. To umožnilo číst nebo zapisovat řízený klientem počet bytů mimo buffer požadavku. Čtení mohlo vést k úniku informací, zápis — k pádu serveru, a při spuštění X serveru s oprávněními root teoreticky otevřelo cestu k zvýšení oprávnění.Use-after-free a únik informací v CreateSaverWindow.
Klient mohl změnit atributy okna a nuceně aktivovat spořič obrazovky, po čemž server přistupoval k již uvolněným datům. V bulletinu je tento scénář popsán jako schopný vést k úniku informací.Zápis mimo haldu v DRI2 DRIGetBuffers / DRIGetBuffersWithFormat.
Chyba se vyskytla při požadavku na více DRI2BufferBackLeft a jeden DRI2BufferFrontLeft. Takový požadavek mohl vést k zápisu mimo vyhrazenou oblast paměti v haldě. Toto je jediný z devíti problémů, který nebyl nalezen prostřednictvím TrendAI ZDI, ale Peterem Huttererem.
Žádné nové samostatné možnosti nebyly v této verzi uvedeny: 21.1.23 a 24.1.12 — především bezpečnostní opravné verze. Uživatelům a správcům distribucí se doporučuje aktualizovat oba balíčky: xorg-server pro klasický X11 a xwayland pro kompatibilitu X11 aplikací v sessions Wayland.
Zdroj: linux.org.ru
