Nedávno dostupnost novou verzi sandboxingu bublinková fólie 0.6, ve kterém byly provedeny některé důležité změny, jako je zahrnutí podpory pro kompilaci s Meson, částečná podpora specifikace REUSE a několik dalších změn.
Pro ty, kteří neznají Bubblewrap, měli byste vědět, že se jedná o a nástroj obvykle používaný k omezení jednotlivých aplikací na neprivilegované uživatele. V praxi projekt Flatpak používá Bubblewrap jako vrstvu k izolaci aplikací spouštěných z balíčků.
Pro izolaci používá Linux virtualizační technologie tradičních kontejnerů založených na použití cgroups, jmenných prostorů, Seccomp a SELinux. Chcete-li provádět privilegované operace ke konfiguraci kontejneru, spustí se Bubblewrap s oprávněními uživatele root (spustitelný soubor s příznakem suid), po kterém je po inicializaci kontejneru obnoveno oprávnění.
O společnosti Bubblewrap
Bubblewrap je umístěn jako omezená implementace suida z podmnožiny funkcí jmenného prostoru uživatele k vyloučení všech ID uživatelů a procesů z prostředí kromě aktuálního, použijte režimy CLONE_NEWUSER a CLONE_NEWPID.
Pro další ochranu programy spuštěné v Bubblewrapu začínají v režimu PR_SET_NO_NEW_PRIVS, který zakazuje nová privilegia, například s příznakem setuid.
Izolace na úrovni souborového systému se provádí vytvořením standardně nového jmenného prostoru mount, ve kterém je pomocí tmpfs vytvořen prázdný kořenový oddíl.
V případě potřeby jsou k této sekci připojeny externí sekce FS v «připojit - svázat»(Například počínaje možností«bwrap –ro-bind / usr / usr', The / usr section is forwarded from the host in read-only mode).
Schopnosti sítě jsou omezeny na přístup k rozhraní zpětné smyčky invertováno s izolací síťového zásobníku pomocí indikátorů CLONE_NEWNET a CLONE_NEWUTS.
Klíčový rozdíl oproti podobnému projektu Firejail, který také používá spouštěč setuid, je to v Bubblewrap, kontejnerová vrstva obsahuje pouze minimální nutné funkce a všechny pokročilé funkce potřebné ke spouštění grafických aplikací, interakci s desktopem a filtrování hovorů do Pulseaudio jsou uvedeny vedle Flatpaku a běží po resetování oprávnění.
Hlavní novinky Bubblewrap 0.6
V této nové verzi Bubblewrap 0.6, která je představena, je to zdůrazněno přidána podpora pro sestavení systému Meson, přičemž podpora pro kompilaci s Autotools bylo zachováno pro nyní, ale je zamýšleno toto bude odstraněn ve prospěch použití Meson v budoucí verzi.
Další novinkou v této nové verzi Bubblewrap 0.6 je implementace opce „–add-seccomp“ pro přidání více než jednoho programu seccomp, také přidáno varování, že pokud je znovu zadána možnost "--seccomp", použije se pouze poslední možnost.
Je také třeba poznamenat, že částečná podpora specifikace REUSE, který sjednocuje proces specifikace informací o licenci a autorských právech.
Kromě toho byly přidány také hlavičky SPDX-License-Identifier k mnoha souborům kódu. Dodržování pokynů REUSE usnadňuje automatické určení, která licence se vztahuje na které části kódu vaší aplikace.
Na druhou stranu dodal argument counter value check z příkazového řádku (argc) a implementoval nouzový východ, pokud je čítač nulový. Změna pUmožňuje blokovat bezpečnostní problémy způsobené nesprávným zpracováním předaných argumentů příkazového řádku, jako je CVE-2021-4034 v Polkitu
Z dalších změn které vyčnívají z této nové verze:
- Hlavní větev v úložišti git byla přejmenována na main
- Odstraňte starou integraci CI
- Použití bash přes PATH pro lepší kompatibilitu s operačními systémy bez FHS
konečně jestli jsi zájem dozvědět se o tom trochu více o této nové verzi můžete zkontrolovat podrobnosti Na následujícím odkazu.