Distribyutor paketlari ma'lumotlar bazasida Ubuntu 15-oktabrda chiqarilishi rejalashtirilgan 26.10 versiyasi Rust tilida yozilgan uutils coreutils (Rust Coreutils) asboblar to'plamiga to'liq o'tishni anglatadi. Rust Coreutils yordamchi dasturlari GNU Coreutils paketining barcha komponentlarini, jumladan, cp, mv va rm yordamchi dasturlarini to'liq almashtirdi, bu esa... Ubuntu 26.04 GNU Coreutils variantida taqdim etildi.
rust-coreutils paketi dastlab versiyada sukut bo'yicha kiritilgan edi Ubuntu 25.10, lekin LTS filialida Ubuntu 26.04-aprel kuni GNU Coreutils to'plamidagi cp, mv va rm yordamchi dasturlari qaytarib olindi. Rust Coreutils kod bazasini audit qilish paytida aniqlangan xavfsizlik muammolari tufayli ushbu variantlar qaytarib olindi. Rust Coreutilsdagi zaifliklarning aksariyati poyga sharoitlari tufayli yuzaga keladi, bu esa ma'lumotlar tekshirilgandan keyin, lekin operatsiya bajarilishidan oldin ma'lumotlarni o'zgartirish imkonini beradi (TOCTOU — Time-Of-Check-To-Time-Of-Use). Boshqa narsalar qatorida, bunday zaifliklar faylni tekshirish tugallanishi va operatsiya boshlanishi o'rtasidagi ramziy bog'liqlik bilan almashtirish imkonini beradi.
Root imtiyozlari bilan ishlaydigan tizim skriptlarida cp, mv va rm yordamchi dasturlaridan foydalanganda, ramziy havolani almashtirish ixtiyoriy fayllarni nusxalash, qayta yozish yoki o'chirish imkonini beradi. Masalan, kataloglarni rekursiv ravishda o'chirishda rm yordamchi dasturi avval barcha kataloglarni skanerlaydi va keyin rmdir() funktsiyasini chaqirish orqali ularni ketma-ket teskari tartibda o'chiradi. Ushbu katalogni skanerlagandan so'ng darhol ota-katalog uchun ramziy havolani almashtirish orqali, lekin uning kichik kataloglarini skanerlashdan oldin, /etc/cron.daily/apport cron skripti har kuni ishga tushirilganda tizimdagi istalgan katalogni o'chirishingiz mumkin. Root sifatida ishga tushirilganda, skript /var/crash katalogining tarkibini rekursiv ravishda o'chiradi, bu esa tizimdagi barcha foydalanuvchilar tomonidan yozilishi mumkin.
Manba: opennet.ru
