Megjelent a Bubblewrap 0.4.0, az elszigetelt környezetek létrehozására szolgáló réteg

Elérhető új kiadás az eszközkészletről Bubblewrap 0.4.0, amely a Linux izolált környezeteinek működését hivatott megszervezni, és normál felhasználói szinten működik. A Bubblewrap a Flatpak projekt által alkalmazott réteg az alkalmazáscsomagokból futtatott programok izolálására. A projekt kódja C nyelven íródott és terjesztésre kerül LGPLv2+ licenc alatt áll.

Az elszigeteléshez a Linuxban megszokott konténeres virtualizációs technológiákat használják, amelyek cgroups, névterek (namespaces), Seccomp és SELinux alkalmazásán alapulnak. A konténer beállításához szükséges privilegizált műveletek végrehajtásához a Bubblewrap root jogokkal (suid flag-gel rendelkező futtatható fájl) indul, majd a konténer inicializálása után a privilégiumokat visszaállítja.

A felhasználói azonosítók (user namespaces) aktiválása a rendszeren nem szükséges a konténerekben saját, különálló azonosító készlet használatához, mivel alapértelmezetten sok disztribúcióban nem működik (a Bubblewrap a felhasználói azonosítók korlátozott suid-implementációjaként pozicionálódik — a felhasználói és folyamatazonosítók környezetből való kizárásához a CLONE_NEWUSER és CLONE_NEWPID módokat használják). További védelmet nyújt, hogy a Bubblewrap alatt futó programok a PR_SET_NO_NEW_PRIVS módba kerülnek, amely megtiltja új privilegiumok megszerzését, például amikor setuid flag van érvényben.
A hasonló projekttől

A fájlrendszer szintű elszigetelés alapértelmezés szerint új névtér létrehozásával történik a mount namespace révén, ahol a tmpfs segítségével üres gyökér partíció jön létre. Ehhez a partícióhoz szükség esetén a külső fájlrendszerek partícióit a 'mount —bind' módban csatlakoztatják (például a 'bwrap —ro-bind /usr /usr' opcióval a /usr partíció a fő rendszerből csak olvasható módban kapcsolódik át). A hálózati lehetőségeket a loopback interfész elérésének korlátozásával és a hálózati verem elszigetelésével korlátozzák, a CLONE_NEWNET és CLONE_NEWUTS flag-ek alkalmazásával.

Firejail , amely szintén setuid alkalmazási modellt használ, annyiban különbözik, hogy a Bubblewrap konténerek létrehozására szolgáló réteg csak a feltétlenül szükséges lehetőségeket tartalmazza, míg minden további funkció, amely grafikus alkalmazások futtatásához, asztali interakcióhoz és a Pulseaudio szerződés szűréséhez szükséges, átkerül a Flatpakhoz és már a privilegiumok visszaállítása után hajtódik végre. A Firejail viszont egyetlen végrehajtható fájlba gyűjti a kapcsolódó funkciókat, ami megnehezíti biztonságának auditálását és fenntartását.a megfelelő szinten Az új kiadás figyelemre méltó a felhasználói és folyamatazonosítók (user namespaces és pid namespaces) meglévő neveinek csatlakoztatásának támogatásának bevezetésével. A névterek csatlakoztatásának kezeléséhez hozzáadták a "--userns", "--userns2" és "--pidns" zászlókat..

Ez a lehetőség nem működik setuid módban, és külön üzemmód használatát igényli, amely root jogosultságok megszerzése nélkül képes működni, de a rendszerben a felhasználói névtereket aktiválni kell (alapértelmezetten inaktív a Debian és a RHEL/CentOS rendszerekben), és nem zárja ki a
megmaradó lehetőségeket.
A felhasználói namespacek a rendszerben (alapértelmezés szerint le vannak tiltva a Debian és RHEL/CentOS rendszerekben) és nem zárja ki a lehetőséget kihasználás potenciálisan a fennmaradó sebezhetőséget a felhasználói névtereik határainak. A Bubblewrap 0.4 új lehetőségei között szerepel, hogy lehetséges a musl C könyvtárral való összeszerelés a glibc helyett, valamint a névkörökről szóló információk fájlba történő mentésének támogatása JSON formátumban.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster