Projekt implementácie nástrojov sudo a su v Ruste

ISRG (Internet Security Research Group), ktorá je zakladateľom projektu Let's Encrypt a propaguje HTTPS a vývoj technológií na zvýšenie bezpečnosti internetu, predstavila projekt Sudo-rs na vytváranie implementácií pomôcok sudo a su napísaných v r. Hrdza, ktorá vám umožňuje vykonávať príkazy v mene iných používateľov. V rámci licencií Apache 2.0 a MIT už bola zverejnená predbežná verzia Sudo-rs, ktorá ešte nie je pripravená na všeobecné použitie. Projekt, ktorý začal pracovať v decembri 2022, má byť dokončený v septembri 2023.

Práca sa v súčasnosti zameriava na implementáciu funkcií v Sudo-rs, ktoré umožňujú jeho použitie ako transparentnú náhradu za sudo v typických prípadoch použitia (predvolené konfigurácie sudoers na Ubuntu, Fedore a Debiane). V budúcnosti sa plánuje vytvorenie knižnice, ktorá umožní vloženie funkcie sudo do iných programov a poskytne alternatívnu metódu konfigurácie, ktorá zabráni syntaxi konfiguračného súboru sudoers. Na základe implementovanej funkcionality sudo bude pripravený aj variant utility su. Okrem toho sa v plánoch spomína podpora pre SELinux, AppArmor, LDAP, nástroje auditu, možnosť autentifikácie bez použitia PAM a implementácia všetkých možností príkazového riadku sudo.

Podľa Microsoftu a Google je asi 70 % zraniteľností spôsobených nebezpečnou správou pamäte. Očakáva sa, že používanie jazyka Rust na vývoj su a sudo zníži riziko zraniteľností spôsobených nebezpečným zaobchádzaním s pamäťou a eliminuje výskyt chýb, ako je prístup k oblasti pamäte po jej uvoľnení a pretečenie vyrovnávacej pamäte. Sudo-rs vyvíjajú inžinieri z Ferrous Systems a Tweede Golf z prostriedkov poskytnutých spoločnosťami ako Google, Cisco, Amazon Web Services.

Bezpečná manipulácia s pamäťou je v Rust zabezpečená v čase kompilácie prostredníctvom kontroly referencií, sledovania vlastníctva objektu a životnosti objektu (rozsahu), ako aj prostredníctvom hodnotenia správnosti prístupu do pamäte počas vykonávania kódu. Rust tiež poskytuje ochranu proti pretečeniu celých čísel, vyžaduje povinnú inicializáciu hodnôt premenných pred použitím, lepšie zvláda chyby v štandardnej knižnici, štandardne aplikuje koncept nemenných referencií a premenných, ponúka silné statické typovanie na minimalizáciu logických chýb.

Zdroj: opennet.ru

Pridať komentár