Ce n'est pas la bonne approche.
En général, la liste noire est une mauvaise base pour une politique de sécurité - elle devrait être basée sur la liste blanche - et la syntaxe d'AppArmor est basée sur cela. À cette fin, vous devez commencer sans détails dans le profil, mais définir l'action de profil pour se plaindre au lieu d'appliquer. Vous pouvez le définir dans le profil (flags=(complain)
) ou en utilisant la commande aa-complain. Ensuite, les directives spécifiques pour autoriser une opération deviennent redondantes.
Je crois que la documentation faisant autorité est celle publiée par SuSE. Mais, brièvement, pour l'accès aux fichiers, le format de configuration est :
<object> <permissions>,
Notez que le globbing dans l'objet (s'il s'agit d'un chemin) est légèrement différent de ce que vous connaissez peut-être sur la ligne de commande. Il y a plus de choses spécifiques à dbus ici.
Mais est-ce que le
allow *,
une syntaxe correcte pour 'tout autoriser'
La syntaxe correcte pour tout autoriser ressemble à :
profile DAC /path/to/exec {
# Allow all rules
capability,
network,
mount,
remount,
umount,
pivot_root,
ptrace,
signal,
dbus,
unix,
file,
}
En fait, il y a deux règles de plus :
rlimit
(AppArmor peut définir et contrôler les limites de ressources associées à un profil)change_profile
(contrôlez les autorisations pour quels profils une tâche confinée peut passer)
Mais cela n'a aucun sens dans ce cas particulier.