Bubblewrap, tööriist eraldatud keskkondades rakenduste loomiseks

Bubblewrap on tööriist mis töötab liivakasti töö korraldamiseks Linuxis ja jookse mitteõigustatud kasutajate rakenduse tasandil. Praktikas kasutab Bubblewrap projekti Flatpak vahekihina tarkvarapakettidest käivitatud rakenduste isoleerimiseks.

Eraldamiseks kasutab Linux virtualiseerimistehnoloogiaid traditsioonilisi konteinereid, mis põhinevad rühmade, nimeruumide, Seccompi ja SELinuxi kasutamisel. Konteineri konfigureerimiseks privilegeeritud toimingute alustamiseks käivitatakse Bubblewrap juurõigustega (täidetav fail suid lipuga), millele järgneb privileegi lähtestamine pärast konteineri lähtestamist.

Süsteemis pole vaja kasutajanimesid lubada, mis võimaldab teil konteinerites kasutada omaenda ID-de komplekti, kuna vaikimisi ei tööta see paljudel jaotustel.

Bubblewrapi kohta

Bubblewrap on paigutatud piiratud suida-rakendusena Kasutajate nimeruumi funktsioonide alamhulgast kõigi kasutaja- ja protsesside ID-de välistamiseks keskkonnast, välja arvatud praegune, kasutage režiime CLONE_NEWUSER ja CLONE_NEWPID.

Täiendavaks kaitseks Bubblewrapis töötavad programmid alustavad režiimis PR_SET_NO_NEW_PRIVS, mis keelab uued privileegid, näiteks lipuga setuid.

Failisüsteemi tasemel eraldamine toimub vaikimisi uue liitumisnimeruumi loomisega, kus tmpfs abil luuakse tühi juurpartitsioon.

Vajadusel lisatakse välised FS-jaotised sellele jaotisele jaotises «mount –köitma»(Näiteks alustades suvandiga«bwrap –ro-bind / usr / usr', Jaotis / usr edastatakse hostilt kirjutuskaitstud režiimis).

Võrgu võimalused on piiratud juurdepääsuga tagasiliidesele tagurpidi indikaatorite abil võrgupinu eraldamisega CLONE_NEWNET ja CLONE_NEWUTS.

Peamine erinevus sarnase Firejaili projektiga, mis kasutab ka käsku setuid, on see Bubblewrapis, konteinerikiht sisaldab ainult minimaalselt vajalikke omadusi ja kõik graafiliste rakenduste käivitamiseks, töölauaga suhtlemiseks ja Pulseaudiole tehtud kõnede filtreerimiseks vajalikud täpsemad funktsioonid viiakse Flatpaki küljele ja käivitatakse pärast õiguste lähtestamist.

Firejail seevastu ühendab kõik seotud funktsioonid ühte käivitatavasse faili, mis raskendab teie auditit ja hoiab turvalisuse õigel tasemel.

Bubblewrap põhimõtteliselt töötab abil tühja ühendusega nimeruumi loomine ajutises failisüsteemis mis hävitatakse pärast liivakasti töötlemise lõppu.

Lülitite abil saab kasutaja luua soovitud failisüsteemi keskkonna nimeruumis, ühendades soovitud kataloogid hostisüsteemi lingile.

Bubblewr 0.4.0

Bubblewrap on praegu versioonis 0.4.0 mis hiljuti välja anti. Projekti kood on kirjutatud tähega C ja levitatakse LGPLv2 + litsentsi alusel.

Uus versioon on märkimisväärne nimeruumide ja protsessidega liitumise toetuse rakendamise poolest olemasolevad kasutajad (pid nimeruumid).

Nimeruumide ühenduse kontrollimiseks on lisatud lipud "–userns", "–userns2" ja "–pidns".

See funktsioon ei tööta režiimis setuid ja nõuab eraldi režiimi, mis võib töötada ilma juurõigusteta, kuid nõuab süsteemis kasutajanimede lubamist (Debianis ja RHEL / CentOS-is vaikimisi keelatud) ega välista võimalust potentsiaalselt ära kasutada allesjäänud "kasutajate nimeruumide" piirangute serva haavatavused.

Bubblewrap 0.4 uutest funktsioonidest täheldatakse ka võimalust ehitada glibci asemel musli C-raamatukoguga, ja tugi nimeruumi teabe salvestamiseks JSON-vormingus statistikafaili.

Bubblewrapi koodi ja selle dokumentatsiooni leiate Githubist, link on see.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.