Ubuntu arendajad naasis GNU Coreutils komplektist cp utiliidi versiooni, pÀrast seda, kui Rust Coreutils implementatsiooni mittevastavus pÔhjustas Live-piltide (livecd-rootfs) koostamise skripti tÔrke.
Ubuntu 24.04 vĂ€ljaandes naasid avastatud haavatavuste tĂ”ttu GNU Coreutils komplekti utiliidid cp, mv ja rm, kuid coreutils-from-uutils 0.0.0~ubuntu26 paketi uuenduses taastati Rust Coreutils utiliidide kasutamine. Probleem tekkis skripti koostamisel, kus utiliiti cp kutsuti ĂŒles valikute "-afL" abil, mis töötasid tavaliselt GNU Coreutils, kuid Rust Coreutils puhul viisid nad tĂ”rke "cp: -r not specified; omitting directory ".
TĂ”rge tekkis, kuna konfliktsete valikute "-L" ja "-a" kĂ€itlemine kĂ€itus erinevalt. Valik "-L" kĂ€sib dereferentsida sĂŒmboolseid linke, samas kui komposiitvalik "-a", mis asendatakse "-dR --preserve=all"-iga, sisaldab valikut "-d", mis keelab sĂŒmboolsete linkide dereferentsimise. Rust Coreutils ignoreeris komposiitvalikut "-a" tĂ€ielikult, mitte ainult konfliktse lipu "-d" eemaldamisega, mis viis â-Râ lipu kadumiseni, mis on vajalik kataloogide rekurssiivseks kopeerimiseks, samuti â--preserve=allâ lipuni, mis on vajalik eelnevate atribuutide sĂ€ilitamiseks koopias.
Allikas: opennet.ru
