Firejail应用隔离系统0.9.72发布

Firejail 0.9.72 项目的版本已经发布,该项目开发了一个用于隔离执行图形、控制台和服务器应用程序的系统,从而可以在运行不可信或可能存在漏洞的程序时最大限度地降低主系统受到损害的风险。 该程序用 C 语言编写,在 GPLv2 许可证下分发,可以在任何内核早于 3.0 的 Linux 发行版上运行。 现成的 Firejail 软件包以 deb(Debian、Ubuntu)和 rpm(CentOS、Fedora)格式准备。

为了进行隔离,Firejail 在 Linux 上使用命名空间、AppArmor 和系统调用过滤 (seccomp-bpf)。 一旦启动,程序及其所有子进程都会使用单独的内核资源视图,例如网络堆栈、进程表和安装点。 相互依赖的应用程序可以组合到一个公共沙箱中。 如果需要,Firejail 还可以用于运行 Docker、LXC 和 OpenVZ 容器。

与容器隔离工具不同,firejail 的配置极其简单,并且不需要准备系统映像 - 容器组合是根据当前文件系统的内容动态形成的,并在应用程序完成后删除。 提供灵活的方式设置文件系统的访问规则;您可以确定允许或拒绝访问哪些文件和目录、连接数据的临时文件系统(tmpfs)、限制对文件或目录的访问为只读、通过组合目录绑定挂载和overlayfs。

对于大量流行的应用程序,包括Firefox、Chromium、VLC和Transmission,已经准备好了现成的系统调用隔离配置文件。 为了获得设置沙盒环境所需的权限,需要使用 SUID root 标志安装 firejail 可执行文件(初始化后会重置权限)。 要在隔离模式下运行程序,只需将应用程序名称指定为 firejail 实用程序的参数,例如“firejail firefox”或“sudo firejail /etc/init.d/nginx start”。

在新版本中:

  • 为系统调用添加了 seccomp 过滤器,阻止命名空间的创建(已添加“--restrict-namespaces”选项以启用)。 更新了系统调用表和 seccomp 组。
  • 改进了force-nonewprivs模式(NO_NEW_PRIVS),该模式可防止新进程获得额外的权限。
  • 添加了使用您自己的 AppArmor 配置文件的功能(提供“--apparmor”选项用于连接)。
  • nettrace 网络流量跟踪系统显示有关每个地址的 IP 和流量强度的信息,实现 ICMP 支持并提供“--dnstrace”、“--icmptrace”和“--snirace”选项。
  • --cgroup 和 --shell 命令已被删除(默认为 --shell=none)。 Firetunnel 构建默认停止。 禁用 /etc/firejail/firejail.config 中的 chroot、private-lib 和 tracelog 设置。 grsecurity 支持已停止。

来源: opennet.ru

添加评论