Inilabas na ang Firejail 0.9.78. Bumubuo ito ng isang sistema para sa nakahiwalay na pagpapatupad ng mga graphical, console, at server application, na nagpapaliit sa panganib na makompromiso ang host system kapag nagpapatakbo ng mga hindi mapagkakatiwalaan o potensyal na mahinang programa. Ang programa ay nakasulat sa C, ipinamamahagi sa ilalim ng lisensyang GPLv2, at tumatakbo sa anumang distribusyon. Linux na may kernel na mas luma sa 3.0. Ang mga handa nang pakete na may Firejail ay inihahanda sa mga format ng deb (Debian, Ubuntu) at rpm (CentOS, Fedora).
Gumagamit ang Firejail ng mga namespace, AppArmor, at system call filtering (seccomp-bpf) para sa isolation. LinuxKapag nailunsad na, ang isang programa at lahat ng mga prosesong anak nito ay gumagamit ng magkakahiwalay na representasyon ng mga mapagkukunan ng kernel, tulad ng network stack, process table, at mga mount point. Ang mga magkakaugnay na aplikasyon ay maaaring pagsamahin sa isang iisang shared sandbox. Maaari ding gamitin ang Firejail upang patakbuhin ang mga container ng Docker, LXC, at OpenVZ.
Hindi tulad ng mga container isolation tool, ang Firejail ay napakadaling i-configure at hindi nangangailangan ng paghahanda ng system image—ang mga nilalaman ng container ay nabubuo nang mabilis batay sa mga nilalaman ng kasalukuyang file system at binubura pagkatapos magtapos ang application. May mga flexible na tuntunin sa pag-access sa file system na nagbibigay-daan sa iyong tukuyin kung aling mga file at direktoryo ang pinapayagan o hindi pinapayagang ma-access, mag-mount ng mga temporary file system (tmpfs) para sa data, paghigpitan ang access sa mga file o direktoryo sa read-only, at pagsamahin ang mga direktoryo gamit ang bind-mount at overlayfs.
Para sa isang malaking bilang ng mga sikat na application, kabilang ang Firefox, Chromium, VLC at Transmission, ang mga nakahanda nang system call isolation profile ay inihanda. Para makuha ang mga pribilehiyong kinakailangan para mag-set up ng isang sandboxed environment, ang firejail executable ay naka-install na may SUID root flag (ang mga pribilehiyo ay ni-reset pagkatapos ng initialization). Para magpatakbo ng program sa isolation mode, tukuyin lang ang pangalan ng application bilang argumento sa firejail utility, halimbawa, “firejail firefox” o “sudo firejail /etc/init.d/nginx start”.
Sa bagong release:
- Ang mga opsyong arg-max-count, arg-max-len, env-max-count, at env-max-len ay idinagdag sa firejail.config configuration file upang baguhin ang mga limitasyon sa bilang at laki ng mga opsyon sa command-line at mga environment variable. Bilang default, ang bilang ng mga argument ay limitado sa 128, ang bilang ng mga environment variable ay limitado sa 256, at ang laki ng bawat argument ay PATH_MAX mula sa limits.h (sa Linux 40196) + 32.
- Idinagdag ang opsyong "--xephyr-extra-params" para sa pagtukoy ng mga karagdagang opsyon sa Xephyr (ginagamit upang lumikha ng mga X11 sandbox environment na may sariling X server na tumatakbo sa isang window) sa command line nang hindi binabago ang firejail.config.
- Ang bwrap (bubblewrap) utility na naka-install sa sandbox environment ay pinalitan ng fbwrap middleware, na naglulunsad ng mga programa nang walang sandboxing upang malutas ang mga isyu sa paglulunsad ng Firefox, Thunderbird, at GIMP dahil sa pagtawag ng glycin 2.0.0 mula sa gdk-pixbuf2 gamit ang bwrap. Idinagdag ang opsyong "--allow-bwrap" upang kopyahin ang bwrap sa halip na ang middleware.
- Na-update ang mga system call table para sa seccomp. Naidagdag na ang mga bagong system call, tulad ng epoll_pwait2 at futex_wait.
- Ang opsyon sa pagbuo na "--disable-globalcfg" ay inalis na, at ang suporta para sa overlayfs ("--overlay") at IDS (Intrusion Detection System, "--ids") mode ay itinigil na.
- Nagdagdag ng mga isolation profile para sa ne text editor (text editor), Trivalent browser, at OpenRA, quakespasm, gzdoom, lzdoom, at uzdoom game engine.
- Mga na-update na profile para sa thunderbird, wine, qutebrowser, firefox, godot, wusc, mullvad-browser, blink, steam, ssh, brave at hashcat.
Pinagmulan: opennet.ru
