Projekt Landrun rozvíja neprivilegovaný systém izolácie aplikácií

Projekt Landrun začal vývoj nového systému pre izolované spúšťanie jednotlivých aplikácií. Na izoláciu je použitý LSM modul jadra Linux Landlock, ktorý umožňuje obísť vykonávanie privilegovaných operácií pri vytváraní sandboxového prostredia. Vo svojej podstate je Landrun podobný utilite Firejail, ale vyznačuje sa jednoduchšou realizáciou, ľahkosťou a možnosťou fungovať pod bežným nepriviligovaným používateľom bez nutnosti poskytnúť flag suid. Kód projektu je napísaný v Go a je distribuovaný pod licenciou GPLv2.

Mechanizmus Landlock umožňuje nepriviligovaným programom obmedziť používanie objektov jadra Linux, ako sú hierarchie súborov, sieťové sockety a ioctl. Na rozdiel od názvových priestorov a filtrovania systémových volaní je izolované prostredie vytvárané jadrom Linux vo forme ďalšej vrstvy nad existujúcimi systémovými mechanizmami správy prístupu. Na interakciu s podsystémom Landlock sa v nástroji landrun používa knižnica go-landlock od vývojárov LandLock.

Landrun umožňuje znížiť riziko kompromitácie hlavného systému pri spúšťaní nedôveryhodných alebo potenciálne zraniteľných programov. Medzi jeho funkcie patrí podpora selektívneho obmedzenia prístupu na úrovni jednotlivých adresárov, viazanie oprávnení na cesty k súborom (povolenie alebo zákaz čítania, písania a spúšťania) a kontrola nad iniciovaním a prijímaním TCP spojení.

Napríklad, pomocou Landrun môže byť procesu zakázané spúšťanie vykonávacích súborov, povolené písanie iba do jednotlivého podadresára s dátami, zakázané vytváranie posluchových socketov na prijímanie sieťových spojení a povolené odosielanie sieťových požiadaviek iba na určené TCP porty. V najjednoduchšom prípade môže byť program vykonaný príkazom "landrun —ro /", a na izoláciu nginx sa môže použiť: landrun —rox /usr/bin —ro /lib,/lib64,/var/www —rwx /var/log —bind-tcp 80,443 /usr/bin/nginx

V plánoch do budúcnosti sa spomína rozšírené riadenie prístupu k súborovému systému, podpora UDP a správa zdrojov procesov. Na obmedzenie prístupu na úrovni súborového systému je potrebné aspoň jadro Linux 5.13, a na sieťové obmedzenia — 6.8.

Je možné poznamenať, že do kódovej základne Firejail už boli prijaté zmeny, ktoré umožňujú používanie pod systému jadra Landlock na izoláciu bez suid-bitu a zvyšovania privilegií, avšak verzia s touto podporou ešte nebola zverejnená.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster