AppArmor 如何处理未配置的程序?

hum*_*ace 8 security apparmor

我在 Ubuntu 中设置和配置了 AppArmor,我想知道 AppArmor 如何处理没有 AppArmor 配置文件的包和应用程序?

安装包后sudo apt-get install apparmor-profiles,我有 175 个配置文件报告为从aa-status

我无法想象我的机器上只安装了 175 个程序,我想知道 AppArmor 做了什么来防止没有配置文件的程序发生安全漏洞。

hum*_*ace 3

根据http://wiki.apparmor.net常见问题解答,任何没有配置文件的程序基本上都是不受保护/不受约束的,并且可以在Ubuntu中做任何恶作剧,几乎就像一开始就没有任何AppArmor一样


jrg*_*jrg 2

一、AppArmor的背景:

AppArmor的安全模型是将访问控制属性绑定到程序而不是用户。

AppArmor 配置文件可以采用以下两种模式之一:强制执行和投诉。

通过 Ubuntu 安全团队的 wiki 页面

因此,强制执行所定义的任何规则(有关更多详细信息,请查看此处),并且抱怨只是将违反策略的尝试记录到系统日志(大多数情况下)。

一些支持的配置文件是:

  • 杯子 (cupsd)
  • MySQL(mysqld)
  • Evince(Ubuntu 上的 PDF 查看器 - 默认启用)。
  • Firefox(默认情况下将被禁用,高级用户可以选择加入)
  • Apache(网络服务器,同上)
  • 这样的例子不胜枚举,但还不够长。完整列表在这里。

值得注意的例外是:

最后,其他人提出了类似的问题,涉及任何未定义的后备配置文件。

但答案是,默认情况下,如果应用程序在 AppArmor 中没有配置文件,它将可以访问所有内容 - 它不会被沙箱化。

然而,在 12.10 上,Chrome 将在 seccomp-bpf 沙箱内运行,该沙箱的模块从 Linux 内核版本 3.5 反向移植到 Canonical 12.10 使用的 3.2 系列。