Veröffentlichung des Anwendung-Isolationssystems Firejail 0.9.72

Die Veröffentlichung von Firejail 0.9.72 wurde bekannt gegeben. Dieses Projekt entwickelt ein System fĂŒr die isolierte AusfĂŒhrung von grafischen, konsolenbasierten und Serveranwendungen, das das Risiko einer Kompromittierung des Hauptsystems beim AusfĂŒhren von nicht vertrauenswĂŒrdigen oder potenziell anfĂ€lligen Programmen minimiert. Die Software ist in C geschrieben, wird unter der GPLv2-Lizenz verbreitet und kann in jeder Linux-Distribution mit einem Kernel Ă€lter als 3.0 betrieben werden. Fertige Pakete fĂŒr Firejail sind in den Formaten deb (Debian, Ubuntu) und rpm (CentOS, Fedora) verfĂŒgbar.

FĂŒr die Isolation in Firejail werden Namespaces, AppArmor und system call filtering (seccomp-bpf) in Linux verwendet. Nach dem Start verwendet das Programm sowie alle seine Kindprozesse separate Ansichten der Systemressourcen, wie etwa den Netzwerkstack, die Prozessliste und die Mount-Punkte. AbhĂ€ngige Anwendungen können in einem gemeinsamen Sandbox zusammengefĂŒhrt werden. Bei Bedarf kann Firejail auch zum Starten von Docker-, LXC- und OpenVZ-Containern verwendet werden.

Im Gegensatz zu Containerisolierungsmethoden ist Firejail extrem einfach zu konfigurieren und erfordert keine Vorbereitung eines Systemimages — der Inhalt des Containers wird zur Laufzeit basierend auf dem Inhalt des aktuellen Dateisystems erstellt und nach Abschluss der Anwendung entfernt. Flexible Mittel zur Festlegung von Zugriffsregeln fĂŒr das Dateisystem werden bereitgestellt, man kann bestimmen, auf welche Dateien und Verzeichnisse der Zugriff erlaubt oder verweigert wird, temporĂ€re Dateisysteme (tmpfs) fĂŒr Daten einbinden, den Zugriff auf Dateien oder Verzeichnisse nur zum Lesen beschrĂ€nken und Verzeichnisse ĂŒber Bind-Mount und Overlayfs kombinieren.

FĂŒr eine Vielzahl beliebter Anwendungen, einschließlich Firefox, Chromium, VLC und Transmission, wurden vorgefertigte Profile zur Isolation von Systemaufrufen erstellt. Um die fĂŒr die Konfiguration einer isolierten Umgebung erforderlichen Berechtigungen zu erhalten, wird die ausfĂŒhrbare Datei firejail mit dem SUID-Root-Flag installiert (nach der Initialisierung werden die Berechtigungen zurĂŒckgesetzt). Um das Programm im Isolationsmodus auszufĂŒhren, genĂŒgt es, den Namen der Anwendung als Argument der firejail-Utility anzugeben, zum Beispiel „firejail firefox“ oder „sudo firejail /etc/init.d/nginx start“.

In der neuen Version:

  • Ein Seccomp-Filter fĂŒr Systemaufrufe wurde hinzugefĂŒgt, der die Erstellung von NamensrĂ€umen blockiert (um diese Funktion zu aktivieren, wurde die Option „—restrict-namespaces“ hinzugefĂŒgt). Die Tabellen der Systemaufrufe und der Seccomp-Gruppen wurden aktualisiert.
  • Der Modus force-nonewprivs (NO_NEW_PRIVS) wurde verbessert, um das Erlangen zusĂ€tzlicher Privilegien in neuen Prozessen zu verbieten.
  • Die Verwendung eigener AppArmor-Profile wurde hinzugefĂŒgt (die Option „—apparmor“ wurde fĂŒr die Einbindung vorgeschlagen).
  • Im System zur Überwachung des Netzwerkverkehrs nettrace, das Informationen ĂŒber IP und den Verkehrsaufkommen von jeder Adresse anzeigt, wurde die UnterstĂŒtzung von ICMP implementiert, und es wurden die Optionen „—dnstrace“, „—icmptrace“ und „—snitrace“ angeboten.
  • Die Befehle —cgroup und —shell wurden entfernt (standardmĂ€ĂŸig wird —shell=none angewendet). Der Build von firetunnel wurde standardmĂ€ĂŸig eingestellt. Die Konfigurationen chroot, private-lib und tracelog in /etc/firejail/firejail.config wurden deaktiviert. Die UnterstĂŒtzung fĂŒr grsecurity wurde eingestellt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4