Firejail 0.9.72 Anwendungsisolationsversion

Die Veröffentlichung des Projekts Firejail 0.9.72 wurde veröffentlicht, das ein System zur isolierten Ausführung von Grafik-, Konsolen- und Serveranwendungen entwickelt, das es ermöglicht, das Risiko einer Gefährdung des Hauptsystems beim Ausführen nicht vertrauenswürdiger oder potenziell anfälliger Programme zu minimieren. Das Programm ist in C geschrieben, wird unter der GPLv2-Lizenz vertrieben und kann auf jeder Linux-Distribution mit einem Kernel älter als 3.0 ausgeführt werden. Fertige Pakete mit Firejail werden in den Formaten deb (Debian, Ubuntu) und rpm (CentOS, Fedora) vorbereitet.

Zur Isolierung verwendet Firejail unter Linux Namespaces (Namespaces), AppArmor und Systemaufruffilterung (seccomp-bpf). Nach dem Start verwenden das Programm und alle seine untergeordneten Prozesse separate Darstellungen von Kernel-Ressourcen wie Netzwerkstapel, Prozesstabelle und Bereitstellungspunkte. Voneinander abhängige Anwendungen können in einer gemeinsamen Sandbox zusammengefasst werden. Auf Wunsch können mit Firejail auch Docker-, LXC- und OpenVZ-Container ausgeführt werden.

Im Gegensatz zu Tools zur Containerisolierung ist Firejail äußerst einfach zu konfigurieren und erfordert keine Vorbereitung eines Systemabbilds – die Zusammensetzung des Containers wird im Handumdrehen basierend auf dem Inhalt des aktuellen Dateisystems erstellt und nach Beendigung der Anwendung gelöscht. Es stehen flexible Tools zum Festlegen von Dateisystem-Zugriffsregeln zur Verfügung. Sie können festlegen, auf welche Dateien und Verzeichnisse Zugriff gewährt oder verweigert werden soll, temporäre Dateisysteme (tmpfs) für Daten verbinden, den Zugriff auf Dateien oder Verzeichnisse auf schreibgeschützt beschränken und Verzeichnisse über Bind-Mount kombinieren und Overlays.

Eine große Anzahl beliebter Anwendungen, darunter Firefox, Chromium, VLC und Transmission, verfügen über vorkonfigurierte Profile zur Systemaufrufisolierung. Um die zum Einrichten einer Sandbox-Umgebung erforderlichen Berechtigungen zu erhalten, wird die ausführbare Firejail-Datei mit dem SUID-Root-Flag installiert (Berechtigungen werden nach der Initialisierung zurückgesetzt). Um ein Programm im Isolationsmodus auszuführen, reicht es aus, den Namen der Anwendung als Argument für das Dienstprogramm firejail anzugeben, zum Beispiel „firejail firefox“ oder „sudo firejail /etc/init.d/nginx start“.

In der neuen Version:

  • Seccomp-Systemaufruffilter hinzugefügt, um die Erstellung von Namespaces zu blockieren (Option „--restrict-namespaces“ zur Aktivierung hinzugefügt). Aktualisierte Systemaufruftabellen und Seccomp-Gruppen.
  • Verbesserter Force-nonewprivs-Modus (NO_NEW_PRIVS), um zu verhindern, dass neue Prozesse zusätzliche Berechtigungen erhalten.
  • Es wurde die Möglichkeit hinzugefügt, Ihre eigenen AppArmor-Profile zu verwenden (für die Verbindung wird die Option „--apparmor“ angeboten).
  • Das Netzwerk-Traffic-Tracking-System nettrace, das Informationen über IP und Traffic-Intensität von jeder Adresse anzeigt, unterstützt ICMP und bietet die Optionen „-dnstrace“, „--icmptrace“ und „--snitrace“.
  • Die Befehle --cgroup und --shell wurden entfernt (Standard ist --shell=none). Der Firetunnel-Build wird standardmäßig gestoppt. Chroot-, Private-Lib- und Tracelog-Einstellungen in /etc/firejail/firejail.config deaktiviert. Unterstützung für grsecurity entfernt.

Source: opennet.ru

Kommentar hinzufügen