Firejail 0.9.72 a fost lansat. Acesta dezvoltă un sistem pentru execuția izolată a aplicațiilor grafice, de consolă și de server, minimizând riscul de compromitere a sistemului gazdă atunci când rulează programe neîncrezătoare sau potențial vulnerabile. Programul este scris în C, distribuit sub licența GPLv2 și rulează pe orice distribuție. Linux cu un kernel mai vechi de 3.0. Pachetele prefabricate cu Firejail sunt pregătite în formate deb (Debian, Ubuntu) și turații pe minut (CentOS, Fedora).
Firejail folosește spații de nume, AppArmor și filtrarea apelurilor de sistem (seccomp-bpf) pentru izolare. LinuxOdată lansat, un program și toate procesele sale fiu utilizează reprezentări separate ale resurselor kernelului, cum ar fi stiva de rețea, tabela de procese și punctele de montare. Aplicațiile interdependente pot fi combinate într-un singur sandbox partajat. Firejail poate fi folosit și pentru a rula containere Docker, LXC și OpenVZ.
Spre deosebire de instrumentele de izolare a containerelor, firejail este extrem de simplu de configurat și nu necesită pregătirea unei imagini de sistem - compoziția containerului se formează din mers pe baza conținutului sistemului de fișiere curent și este ștearsă după finalizarea aplicației. Sunt furnizate mijloace flexibile de stabilire a regulilor de acces la sistemul de fișiere; puteți determina ce fișiere și directoare au acces sau li se permite accesul, puteți conecta sisteme de fișiere temporare (tmpfs) pentru date, puteți limita accesul la fișiere sau directoare la numai citire, puteți combina directoare prin bind-mount și suprapuneri.
Pentru un număr mare de aplicații populare, inclusiv Firefox, Chromium, VLC și Transmission, au fost pregătite profiluri de izolare a apelurilor de sistem gata făcute. Pentru a obține privilegiile necesare pentru a configura un mediu sandbox, executabilul firejail este instalat cu steag-ul rădăcină SUID (privilegiile sunt resetate după inițializare). Pentru a rula un program în modul de izolare, pur și simplu specificați numele aplicației ca argument pentru utilitarul firejail, de exemplu, „firejail firefox” sau „sudo firejail /etc/init.d/nginx start”.
În noua versiune:
- S-a adăugat un filtru seccomp pentru apelurile de sistem care blochează crearea de spații de nume (opțiunea „--restrict-namespaces” a fost adăugată pentru activare). Tabelele de apeluri de sistem și grupurile seccomp actualizate.
- Modul forțat-nonewprivs îmbunătățit (NO_NEW_PRIVS), care împiedică noile procese să obțină privilegii suplimentare.
- S-a adăugat posibilitatea de a utiliza propriile profiluri AppArmor (opțiunea „--apparmor” este oferită pentru conectare).
- Sistemul de urmărire a traficului de rețea nettrace, care afișează informații despre IP și intensitatea traficului de la fiecare adresă, implementează suport ICMP și oferă opțiunile „--dnstrace”, „--icmptrace” și „--snitrace”.
- Comenzile --cgroup și --shell au fost eliminate (prestabilit este --shell=none). Construirea Firetunnel este oprită implicit. Setările chroot, private-lib și tracelog au fost dezactivate în /etc/firejail/firejail.config. asistența grsecurity a fost întreruptă.
Sursa: opennet.ru
