Ho lokolloa ha lisebelisoa bakeng sa ho hlophisa mosebetsi oa libaka tse ka thoko Bubblewrap 0.8 ea fumaneha, hangata e sebelisetsoang ho thibela lits'ebetso tsa basebelisi ba se nang boiketlo. Ha e le hantle, Bubblewrap e sebelisoa ke morero oa Flatpak e le lera la ho arola lits'ebetso tse qalileng ho tsoa ho liphutheloana. Khoutu ea projeke e ngotsoe ka C mme e ajoa tlasa laesense ea LGPLv2+.
Bakeng sa ho itšehla thajana, ho sebelisoa litheknoloji tse tloaelehileng tsa lisebelisoa tsa Linux, tse ipapisitseng le ts'ebeliso ea lihlopha, libaka tsa mabitso, Seccomp le SELinux. Ho etsa ts'ebetso e khethehileng ea ho lokisa setshelo, Bubblewrap e hlahisoa ka litokelo tsa metso (faele e ka phethisoang e nang le folakha ea suid) ebe e hlophisa litokelo bocha kamora hore setshelo se qalisoa.
Ts'ebetso ea libaka tsa mabitso a basebelisi tsamaisong ea sebaka sa mabitso, e u lumellang hore u sebelise li-identifiers tsa hau tse arohaneng ka har'a lijana, ha e hlokehe bakeng sa ts'ebetso, kaha ha e sebetse ka mokhoa o ikhethileng likhatisong tse ngata. karolo e nyane ea bokhoni ba libaka tsa mabitso a basebelisi - ho se kenyelletse li-identifiers tsohle le ts'ebetso tikolohong, ntle le ea hajoale, ho sebelisoa mekhoa ea CLONE_NEWUSER le CLONE_NEWPID). Bakeng sa tšireletso e eketsehileng, mananeo a sebelisoang tlas'a Bubblewrap a hlahisoa ka mokhoa oa PR_SET_NO_NEW_PRIVS, o thibelang ho fumanoa ha litokelo tse ncha, ka mohlala, haeba folakha ea setuid e le teng.
Ho itšehla thajana boemong ba tsamaiso ea faele ho finyelloa ka ho theha sebaka se secha sa mabitso ka ho sa feleng, moo karohano ea metso e se nang letho e entsoeng ka tmpfs. Haeba ho hlokahala, likarolo tsa kantle tsa FS li hokahantsoe le karohano ena ka mokhoa oa "mount -bind" (mohlala, ha e qala ka khetho ea "bwrap -ro-bind / usr / usr", karohano ea / usr e fetisetsoa ho sistimi e kholo. ka mokgwa wa ho bala feela). Bokhoni ba marang-rang bo lekanyelitsoe ho fihlella sehokelo sa loopback ka ho itšehla thajana ka stack ea marang-rang ka CLONE_NEWNET le lifolakha tsa CLONE_NEWUTS.
Phapang ea mantlha ho tsoa ho projeke e ts'oanang ea Firejail, eo hape e sebelisang mohlala oa ho qala setuid, ke hore ho Bubblewrap sethala sa ho theha setshelo se kenyelletsa feela bokhoni bo hlokahalang, le mesebetsi eohle e tsoetseng pele e hlokahalang bakeng sa ho sebelisa lits'ebetso tsa graphical, ho sebelisana le komporo le likopo tsa ho sefa. ho Pulseaudio, e fetiselitsoe lehlakoreng la Flatpak mme e phethiloe ka mor'a hore litokelo li tsosolosoe. Ka lehlakoreng le leng, Firejail e kopanya mesebetsi eohle e amanang le faele e le 'ngoe e sebetsang, e leng se etsang hore ho be thata ho hlahloba le ho boloka tšireletso ka tekanyo e nepahetseng.
Tokollong e ncha:
- E kentse khetho ea "-disable-userns" ho thibela tlhahiso ea sebaka sa eona sa mabitso sa mosebelisi tikolohong ea sandbox.
- E kenyellelitsoe "--assert-userns-disabled" khetho ho hlahloba hore na sebaka sa ID sa mosebelisi se sebelisoa ha ho sebelisoa khetho ea "--disable-userns".
- Litaba tsa melaetsa ea liphoso tse amanang le ho tima CONFIG_SECCOMP le CONFIG_SECCOMP_FILTER litlhophiso tsa kernel li ekelitsoe.
Source: opennet.ru