Skip to content

Commit

Permalink
apparmor: Update mount states handling
Browse files Browse the repository at this point in the history
Properly list all of the states and the right apparmor stanza for them,
then comment them all as actually enabling this would currently let the
user bypass apparmor entirely.

Signed-off-by: Stéphane Graber <stgraber@ubuntu.com>
  • Loading branch information
stgraber committed Jun 27, 2016
1 parent 7e4c9a3 commit 549a40b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 24 deletions.
21 changes: 9 additions & 12 deletions config/apparmor/abstractions/container-base
Expand Up @@ -93,18 +93,15 @@
# deny reads from debugfs
deny /sys/kernel/debug/{,**} rwklx,

# allow paths to be made shared, rshared, private or rprivate
mount options=(rw,shared) -> /,
mount options=(rw,shared) -> /**,

mount options=(rw,rshared) -> /,
mount options=(rw,rshared) -> /**,

mount options=(rw,private) -> /,
mount options=(rw,private) -> /**,

mount options=(rw,rprivate) -> /,
mount options=(rw,rprivate) -> /**,
# allow paths to be made slave, shared, private or unbindable
mount options=(rw,make-slave) -> **,
mount options=(rw,make-rslave) -> **,
mount options=(rw,make-shared) -> **,
mount options=(rw,make-rshared) -> **,
mount options=(rw,make-private) -> **,
mount options=(rw,make-rprivate) -> **,
mount options=(rw,make-unbindable) -> **,
mount options=(rw,make-runbindable) -> **,

# allow bind-mounts of anything except /proc, /sys and /dev
mount options=(rw,bind) /[^spd]*{,/**},
Expand Down
22 changes: 10 additions & 12 deletions config/apparmor/abstractions/container-base.in
Expand Up @@ -93,18 +93,16 @@
# deny reads from debugfs
deny /sys/kernel/debug/{,**} rwklx,

# allow paths to be made shared, rshared, private or rprivate
mount options=(rw,shared) -> /,
mount options=(rw,shared) -> /**,

mount options=(rw,rshared) -> /,
mount options=(rw,rshared) -> /**,

mount options=(rw,private) -> /,
mount options=(rw,private) -> /**,

mount options=(rw,rprivate) -> /,
mount options=(rw,rprivate) -> /**,
# allow paths to be made slave, shared, private or unbindable
# FIXME: This currently doesn't work due to the apparmor parser treating those as allowing all mounts.
# mount options=(rw,make-slave) -> **,
# mount options=(rw,make-rslave) -> **,
# mount options=(rw,make-shared) -> **,
# mount options=(rw,make-rshared) -> **,
# mount options=(rw,make-private) -> **,
# mount options=(rw,make-rprivate) -> **,
# mount options=(rw,make-unbindable) -> **,
# mount options=(rw,make-runbindable) -> **,

# allow bind-mounts of anything except /proc, /sys and /dev
mount options=(rw,bind) /[^spd]*{,/**},
Expand Down

0 comments on commit 549a40b

Please sign in to comment.