Hat hónapnyi fejlesztés után a projekt kiadását , amely keretében a grafikus, konzolos és szerveralkalmazások elszigetelt végrehajtásához szükséges rendszer fejlődik. A Firejail alkalmazása minimalizálja a fő rendszer kompromittálódásának kockázatát megbízhatatlan vagy potenciálisan sebezhető programok indításakor. A program C nyelven készült, GPLv2 licenc alatt, és bármely Linux disztribúcióban működik, amelynek magja 3.0 vagy annál újabb. Készen elérhető csomagok a Firejail számára deb (Debian, Ubuntu) és rpm (CentOS, Fedora) formátumokban.
A Firejail isolálásához névkörök (namespaces), AppArmor és rendszerhívások szűrése (seccomp-bpf) Linuxon. A program indítása után a program és minden gyermekfolyamat különálló erőforrásnézetet használ, mint például hálózati verem, folyamatok táBlázata és csatlakozási pontok. Az egymással összefüggő alkalmazások egy közös homokozóba (sandbox) egyesíthetők. Ha szükséges, a Firejail használható Docker, LXC és OpenVZ konténerek indításához is.
A konténeres izolálás eszközeihez képest a firejail rendkívül a konfigurációban, és nem igényel rendszerkép előkészítést — a konténer tartalma dinamikusan, a jelenlegi fájlrendszer alapjain alakul ki, és az alkalmazás befejezése után eltávolításra kerül. Rugalmas hozzáférési szabályok beállítását teszi lehetővé a fájlrendszerhez, meghatározható, hogy mely fájlokhoz és mappákhoz van engedélyezett vagy tiltott hozzáférés, ideiglenes fájlrendszerek (tmpfs) csatlakoztathatók az adatokhoz, a fájlokhoz vagy mappákhoz való hozzáférés csak olvasásra korlátozható, és mappák összekapcsolhatók bind-mount és overlayfs segítségével.
Számos népszerű alkalmazás, például a Firefox, Chromium, VLC és Transmission számára készített a rendszerhívások elszigetelésére. Az elszigetelt környezet beállításához szükséges jogosultságok megszerzéséhez a firejail végrehajtható fájl SUID root zászlóval van beállítva (a jogosultságok a inicializálás után törlődnek). Az alkalmazás izolált módban történő futtatásához elegendő a tűzket szóló eszköz argumntumához megadni, például: „firejail firefox” vagy „sudo firejail /etc/init.d/nginx start”.
Az új kiadásban:
- A konfigurációs fájl helye: /etc/firejail/firejail.config a file-copy-limit beállítás, amely meghatározza azokat a fájlok méretét, amelyeket a memória egyes opciók használatakor fognak lemásolni „—private-*” (az alapértelmezett korlát 500MB-ra van állítva).
- Az /usr/share/doc/firejail könyvtárba sablonok kerültek hozzáadásra új alkalmazáskorlátozó profilok létrehozásához.
- A profilokban engedélyezve van a hibakeresők használata.
- Javult a rendszerhívások szűrése a seccomp mechanizmus segítségével.
- Automatikusan meghatározásra kerülnek a fordító zászlói.
- A chroot hívása most nem az útvonal alapján, hanem fájl leíró alapú csatlakozási pontok használatával történik.
- Az /usr/share könyvtárat különböző profilok fehérlistájába helyezték.
- A conrib szekcióhoz új segédscriptként került hozzáadásra a gdb-firejail.sh és a sort.py.
- Megerősítették a védekezést a privilegizált kód (SUID) végrehajtásának szakaszában.
- Az új profilokhoz HAS_X11 és HAS_NET feltételes jelek kerültek bevezetésre, amelyek az X-szerver és a hálózati hozzáférés meglétét ellenőrzik.
- Alkalmazások izolált indításához profilok lettek hozzáadva (az összes profil száma 884-re emelkedett):
- i2p,
- tor-browser (AUR),
- Zulip,
- rsync,
- signal-cli,
- tcpdump,
- tshark,
- qgis,
- OpenArena,
- godot,
- klatexformula,
- klatexformula_cmdl,
- links,
- xlinks,
- pandoc,
- teams-for-linux,
- gnome-sound-recorder,
- newsbeuter,
- keepassxc-cli,
- keepassxc-proxy,
- rhythmbox-client,
- jerry,
- zeal,
- mpg123,
- conplay,
- mpg123.bin,
- mpg123-alsa,
- mpg123-id3dump,
- out123,
- mpg123-jack,
- mpg123-nas,
- mpg123-openal,
- mpg123-oss,
- mpg123-portaudio,
- mpg123-pulse,
- mpg123-strip,
- pavucontrol-qt,
- gnome-characters,
- gnome-character-map,
- Whalebird,
- tb-starter-wrapper,
- bzcat,
- kiwix-desktop,
- bzcat,
- zstd,
- pzstd,
- zstdcat,
- zstdgrep,
- zstdless,
- zstdmt,
- unzstd,
- ar,
- gnome-latex,
- pngquant,
- kalgebra,
- kalgebramobile,
- amuled,
- kfind,
- profanity,
- audio-recorder,
- cameramonitor,
- ddgtk,
- drawio,
- unf,
- gmpc,
- electron-mail,
- gist,
- gist-paste.
Forrás: opennet.ru
