Bubblewrap 0.12 versija, slāņi izolētu vidi izveidošanai

Publicēta jaunā versija rīku komplektam izolētu vidi organizēšanai Bubblewrap 0.12, ko izmanto, lai ierobežotu atsevišķu lietotāju nepiekļuves lietojumprogrammas. Praksē Bubblewrap izmanto Flatpak projekta vārdā kā izolācijas slāni palaižamajiem lietojumprogrammu pakotnēm. Izolācijai tiek izmantotas tradicionālās Linux konteineru virtualizācijas tehnoloģijas, kas balstītas uz cgroups, nosaukumu telpām (namespaces), Seccomp un SELinux. Projekta kods ir uzrakstīts C valodā un izplatīts ar LGPLv2.1+ licenci.

Failu sistēmas līmeņa izolācija tiek veikta, izveidojot pēc noklusējuma jaunu mītu telpu (mount namespace), kurā, izmantojot tmpfs, tiek izveidota tukša saknes daļa. Šajā daļā, ja nepieciešams, pieslēdz ārējo FS sadaļas, izmantojot režīmu "mount --bind" (piemēram, palaižot ar opciju "bwrap --ro-bind /usr /usr", sadaļa /usr tiek pārraidīta no pamat sistēmas tikai lasīšanas režīmā). Tīkla iespējas ir ierobežotas ar piekļuvi loopback interfeisam, izolējot tīkla steku, izmantojot CLONE_NEWNET un CLONE_NEWUTS flagus.

Lai izslēgtu visus nevajadzīgos lietotāju un procesu identificētājus no izveidotās izolētās vides, var izmantot CLONE_NEWUSER (lietošanas nosaukumu telpa) un CLONE_NEWPID (PID nosaukumu telpa) režīmus, un jaunu privilēģiju iegūšanas aizliegumam tiek izmantots PR_SET_NO_NEW_PRIVS režīms. Nepieciešamo privilēģiju iegūšanai tiek izmantota "lietošanas nosaukumu telpa".

Jaunajā laidienā:

  • Koda licence ir mainīta no LGPL 2.0+ uz LGPL 2.1+.
  • Atbalsts izpildāmā faila veidošanai ar papildu privilēģijām, izmantojot suid root flagu, ir pārtraukts. Tagad ir obligāti, lai sistēmā būtu atbalsts "lietošanas nosaukumu telpai". Kā iemesls minēta suid varianta atbalsta grūtības globālas "lietošanas nosaukumu telpas" atbalsta fonā izplatījumos.
  • Pievienota opcija "--not-a-security-boundary", kuru izvēloties, daži konfigurācijas kļūmes izolētajā sandbox vidē, piemēram, apakšdaļas montēšana, neizraisīs avārijas apturēšanu.
  • Tika pievienota opcija «assume_kernel», kas atspējo atpakaļsaderības nodrošināšanu ar Linux kodoliem, kas ir vecāki par norādīto versiju. Piemēram, norādot versijas 5.6.0+, tiks izslēgta alternatīvas funkcionalitātes «openat2(RESOLVE_IN_ROOT)» īstenošana.

Avots: opennet.lv

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster