Projektet Landrun utvecklar ett icke-privilegierat system för isolering av applikationer

Projektet Landrun har pÄbörjat utvecklingen av ett nytt system för isolerat utförande av enskilda applikationer. För isolering anvÀnds LSM-modulen i Linux-kÀrnan Landlock, som möjliggör skapande av sandbox-miljöer utan att behöva utföra privilegierade operationer. Landrun liknar verktyget Firejail i sina uppgifter, men skiljer sig genom en enklare implementering, lÀttviktighet och möjligheten att anvÀndas av vanliga, icke-privilegierade anvÀndare utan att behöva installeras med suid-flaggan. Koden för projektet Àr skriven i Go och distribueras under GPLv2-licensen.

Landlock-mekanismen tillÄter icke-privilegierade program att begrÀnsa anvÀndningen av objekt i Linux-kÀrnan, som filhierarkier, nÀtverksocketar och ioctl. Till skillnad frÄn namnrymder och filtrering av systemanrop skapas den isolerade miljön av Linux-kÀrnan som ett extra lager ovanpÄ befintliga systemhanteringsmekanismer för Ätkomst. För interaktion med Landlock-under-systemet anvÀnds biblioteket go-landlock frÄn utvecklarna av LandLock i verktyget landrun.

Landrun gör det möjligt att minska risken för kompromettering av det primÀra systemet vid körning av program som inte Àr betrodda eller potentiellt sÄrbara. Bland funktionerna finns stöd för selektiv ÄtkomstbegrÀnsning pÄ nivÄer av enskilda kataloger, bindning av rÀttigheter till filvÀgar (tillÄtelse eller förbud mot lÀsning, skrivning och exekvering) och kontroll över initiering och mottagning av TCP-anslutningar.

Till exempel kan man med hjĂ€lp av Landrun förbjuda en process att köra exekverbara filer, tillĂ„ta skrivning endast i en specifik underkatalog med data, förbjuda skapande av lyssnande socketar för att ta emot nĂ€tverksanslutningar och tillĂ„ta sĂ€ndning av nĂ€tverksförfrĂ„gningar endast till angivna TCP-portar. I det enklaste fallet kan man förbjuda skrivning, körning och nĂ€tverksfunktioner genom att köra programmet med kommandot "landrun —ro \/", och för isolering av nginx kan man anvĂ€nda: landrun —rox \/usr\/bin —ro \/lib,\lib64,\/var\/www —rwx \/var\/log —bind-tcp 80,443 \/usr\/bin\/nginx.

I framtidsplanerna nĂ€mns utvidgad Ă„tkomstkontroll för filsystemet, stöd för UDP och processresurshantering. För att begrĂ€nsa Ă„tkomst pĂ„ filsystemnivĂ„ krĂ€vs minst Linux-kĂ€rna 5.13, och för nĂ€tverksbegrĂ€nsningar — 6.8.

Det bör ocksÄ noteras att Àndringar har gjorts i Firejail-kodbasen som möjliggör anvÀndning av Landlock-kÀrnunderystemet för isolering utan suid-bit och höjda privilegier, men en version med detta stöd har Ànnu inte publicerats.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster