V správcoch balíkov Nix a Lix bola objavená zraniteľnosť, ktorá umožňuje spustenie kódu s oprávneniami procesu na pozadí, ktorý beží pod používateľom root v systéme NixOS a inštaláciách s viacerými používateľmi. Problém (CVE nie je priradené) ovplyvňuje proces na pozadí nix-daemon, ktorý sa používa na poskytnutie prístupu k operáciám zostavovania a repozitáru balíkov neprivilegovaným používateľom.
Táto zraniteľnosť vyplýva z chýbajúceho obmedzenia rekurzívneho spracovania adresárov v kóde pre analýzu NAR (Nix Archive). Toto je možné zneužiť na spustenie vyčerpania zásobníka korutín a prepísanie obsahu haldy nachádzajúcej sa za zásobníkom bez ochranných stránok. Tento problém môže zneužiť ktorýkoľvek používateľ, ktorý je schopný nadviazať spojenie s démonom nix. Štandardne majú všetci používatelia túto možnosť, čo im umožňuje zvýšiť svoje privilégiá na používateľa root v inštaláciách Nix s viacerými používateľmi.
Problém bol vyriešený obmedzením úrovne rekurzie na 64 vnorených adresárov, pridaním ochranných stránok medzi zásobník a haldu a implementáciou dodatočných kontrol symbolických odkazov v NAR. V systéme Nix sa táto zraniteľnosť objavuje od verzie 2.24.4 a bola opravená vo vydaniach 2.34.7, 2.33.6, 2.32.8, 2.31.5, 2.30.5, 2.29.4 a 2.28.7. V systéme Lix sa táto zraniteľnosť objavila vo vydaní 2.93.0 a bola opravená v aktualizáciách 2.93.4, 2.94.2 a 2.95.2. Správca balíkov Guix nie je touto zraniteľnosťou ovplyvnený.
Okrem toho publikované aktualizácie Nixu opravujú ďalšiu zraniteľnosť (bez CVE) hodnotenú ako stredná úroveň závažnosti (4.3 z 10). Problém existuje od verzie Nix 2.24.7 a umožňuje zapisovanie súborov do oblasti mimo koreňového adresára, do ktorého sa rozbaľujú archívy. Zraniteľnosť sa zneužíva vytvorením prvkov s absolútnymi cestami k súborom v súboroch tar. Pri rozbaľovaní takýchto archívov pomocou príkazu „nix-prefetch-url --unpack“ alebo „nix store prefetch-file --unpack“ sa súbory s absolútnymi cestami extrahujú tak, ako sú, bez ich konverzie na relatívne cesty.
Zdroj: opennet.ru
