Lansarea sistemului de izolare a aplicației Firejail 0.9.72

A fost publicată lansarea proiectului Firejail 0.9.72, care dezvoltă un sistem de execuție izolată a aplicațiilor grafice, de consolă și de server, permițând minimizarea riscului de a compromite sistemul principal atunci când rulează programe nedemne de încredere sau potențial vulnerabile. Programul este scris în C, distribuit sub licența GPLv2 și poate rula pe orice distribuție Linux cu un nucleu mai vechi de 3.0. Pachetele Firejail gata făcute sunt pregătite în formate deb (Debian, Ubuntu) și rpm (CentOS, Fedora).

Pentru izolare, Firejail folosește spații de nume, AppArmor și filtrarea apelurilor de sistem (seccomp-bpf) pe Linux. Odată lansat, programul și toate procesele sale secundare folosesc vederi separate ale resurselor kernelului, cum ar fi stiva de rețea, tabelul de procese și punctele de montare. Aplicațiile care depind unele de altele pot fi combinate într-un singur sandbox comun. Dacă se dorește, 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

Adauga un comentariu