Lëshimi i Bubblewrap 0.6, një shtresë për krijimin e mjediseve të izoluara

E disponueshëm dalja e veglës për organizimin e punës së mjediseve të izoluar Bubblewrap 0.6, e cila përdoret zakonisht për të kufizuar aplikacione të veçanta të përdoruesve të papërgjegjshëm. Në praktikë, Bubblewrap përdoret nga projekti Flatpak si një ndërfytyr dhe për izolimin e aplikacioneve të drejtuara nga paketat. Kodi i projektit është shkruar në gjuhën C dhe shpërndahet nën licencën LGPLv2+.

PĂ«r izolim, pĂ«rdoren teknologjitĂ« tradicionale tĂ« virtualizimit tĂ« konteinerĂ«ve nĂ« Linux, tĂ« bazuara nĂ« pĂ«rdorimin e cgroups, hapĂ«sirave tĂ« emrave (namespaces), Seccomp dhe SELinux. PĂ«r tĂ« kryer operacione me privilegje pĂ«r konfigurimin e konteinerit, Bubblewrap запусĐșається Đ· праĐČĐ°ĐŒĐž root (skedari ekzekutiv me flamurin suid) dhe mĂ« pas e humb privilegjin pas pĂ«rfundimit tĂ« inicializimit tĂ« konteinerit.

Aktivizimi i sistemit tĂ« hapĂ«sirave tĂ« emrave tĂ« identifikuesve tĂ« pĂ«rdoruesit (user namespaces), tĂ« cilat lejojnĂ« pĂ«rdorimin nĂ« kontejnerĂ« tĂ« njĂ« grupi tĂ« veçantĂ« identifikuesish, nuk kĂ«rkohet pĂ«r punĂ«, pasi nĂ« parazgjedhje nuk funksionon nĂ« shumĂ« distribucione (Bubblewrap pozicionohet si njĂ« realizim i kufizuar suid i njĂ« nĂ«ngrupe tĂ« mundĂ«sive tĂ« hapĂ«sirave tĂ« emrave tĂ« identifikuesve — pĂ«r tĂ« pĂ«rjashtuar tĂ« gjithĂ« identifikuesit e pĂ«rdoruesve dhe proceseve nga mjedisi, pĂ«rveç atij aktual, pĂ«rdoren modet CLONE_NEWUSER dhe CLONE_NEWPID). PĂ«r mbrojtje shtesĂ«, programet qĂ« ekzekutohen nĂ«n Bubblewrap nisĂ«n nĂ« modin PR_SET_NO_NEW_PRIVS, qĂ« ndalon marrjen e privilegjeve tĂ« reja, pĂ«r shembull, kur flagu setuid Ă«shtĂ« aktiv.

Izolimi në nivelin e sistemit të skedarëve bëhet përmes krijimit të një hapësire të re të përkohshme siç është hapësira e montimit (mount namespace), ku krijohet një pjesë e zbrazët rrënjore përmes tmpfs. Në këtë pjesë, sipas nevojës, lidhen pjesë të sistemit të skedarëve të jashtëm në mënyrën "mount --bind" (për shembull, kur fillohet me opsionin "bwrap --ro-bind /usr /usr", pjesa /usr kalon nga sistemi kryesor në mënyrë vetëm për lexim). Aftësitë rrjetore kufizohen në qasje në ndërfaqen loopback me izolimin e stekës rrjetore përmes flagjeve CLONE_NEWNET dhe CLONE_NEWUTS.

Dallimi kryesor nga projekti i ngjashëm Firejail, i cili gjithashtu përdor modelin e përpunimit me setuid, është se në Bubblewrap, shtresa për krijimin e kontejnerëve përfshin vetëm minimumin e nevojshëm të funksionaliteteve, ndërsa të gjitha funksionet e avancuara, të nevojshme për ekzekutimin e aplikacioneve grafike, ndërveprimin me desktopin dhe filtrimin e kërkesave në Pulseaudio, janë transferuar në anën e Flatpak dhe ekzekutohen pas heqjes së privilegjeve. Firejail, nga ana tjetër, bashkon në një skedar ekzekutiv të gjitha funksionalitetet përkatëse, çka e komplikon auditimin e tij dhe ruajtjen e sigurisë në nivelin e duhur.

Në lëshimin e ri:

  • Shtuar mbĂ«shtetje pĂ«r sistemin e ndĂ«rtimit Meson. MbĂ«shtetje pĂ«r ndĂ«rtim me Autotools ende ruhet, por do tĂ« hiqet nĂ« njĂ« nga daljet e ardhshme.
  • Realizuar opsioni "—add-seccomp" pĂ«r tĂ« shtuar mĂ« shumĂ« se njĂ« program seccomp. Shtuar njĂ« paralajmĂ«rim se, nĂ«se opsioni "—seccomp" pĂ«rsĂ«ritet, do tĂ« aplikohet vetĂ«m parametri i fundit.
  • Dega master nĂ« depo git Ă«shtĂ« rinovuar nĂ« main.
  • Shtuar mbĂ«shtetje tĂ« pjesshme pĂ«r specifikimin REUSE, i cili unifikon procesin e pĂ«rcaktimit tĂ« informacionit mbi licencat dhe tĂ« drejtat e autorit. NĂ« shumĂ« skedarĂ« tĂ« kodit janĂ« shtuar titujt SPDX-License-Identifier. Pasimi i rekomandimeve REUSE e lehtĂ«son identifikimin automatik tĂ« licencĂ«s qĂ« aplikohet pĂ«r cilat pjesĂ« tĂ« kodit tĂ« aplikacionit.
  • Shtuar verifikimin e vlerĂ«s sĂ« numrit tĂ« argumenteve tĂ« linjĂ«s sĂ« komandĂ«s (argc) dhe realizuar njĂ« dalje emergjente nĂ« rast se numri Ă«shtĂ« zero. Ky ndryshim lejon bllokimin e problemeve tĂ« sigurisĂ« tĂ« shkaktuara nga trajtimi i papĂ«rshtatshĂ«m i argumenteve tĂ« kaluara tĂ« linjĂ«s sĂ« komandĂ«s, siç Ă«shtĂ« CVE-2021-4034 nĂ« Polkit.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster