Your message dated Sun, 15 Jul 2018 18:41:45 +1000
with message-id <4966324.mZ6rfb5ClL@deblab>
and subject line Done: docker.io: update AppArmor policy for newer AppArmor
has caused the Debian Bug report #764405,
regarding docker.io: update AppArmor policy for newer AppArmor
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
764405: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=764405
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: docker.io
Version: 1.2.0~dfsg1-1
Severity: normal
Tags: patch
User: [email protected]
Usertags: origin-ubuntu utopic ubuntu-patch

Dear Maintainer,

In Ubuntu, the attached patch was applied to achieve the following:
  * debian/patches/sync-apparmor-with-lxc.patch: update AppArmor policy to
    by in sync with LXC. Specifically this:
    - reorganizes the rules to allow for easier comparison with other
      container policy
    - adds comments for many rules
    - adds bare dbus rule
    - adds ptrace rule to allow ptracing ourselves
    - adds deny mount options=(ro, remount, silent) -> /
    - allows hugetlbfs
    - adds cgmanager mount
    - adds /sys/fs/pstore mount
    - more specific /sys/kernel/security mount options
    - more specific /sys mount options
    - more specific /proc/sys/kernel/* deny rules
    - more specific /proc/sys/net deny rules
    - more specific /sys/class deny rules
    - more specific /sys/devices deny rules
    - more specific /sys/fs deny rules


Now, Ubuntu had dbus, signal, ptrace and unix mediation whereas Debian does
not yet (this is is part of the upcoming AppArmor 2.9 and the corresponding
kernel patches are being work on now). You'll likely want to apply this patch
either specifically on if being built on Ubuntu or conditionally on if you
are building against AppArmor 2.9.

Thanks for considering the patch.

-- System Information:
Debian Release: jessie/sid
  APT prefers utopic-updates
  APT policy: (500, 'utopic-updates'), (500, 'utopic-security'), (500, 'utopic')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-18-generic (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -Nru docker.io-1.2.0~dfsg1/debian/changelog docker.io-1.2.0~dfsg1/debian/changelog
diff -Nru docker.io-1.2.0~dfsg1/debian/patches/series docker.io-1.2.0~dfsg1/debian/patches/series
--- docker.io-1.2.0~dfsg1/debian/patches/series	2014-09-12 17:31:57.000000000 -0500
+++ docker.io-1.2.0~dfsg1/debian/patches/series	2014-10-01 13:20:13.000000000 -0500
@@ -11,3 +11,4 @@
 # Upstream deltas:
 #  -> Let there be light on non-amd64
 enable-non-amd64-arches.patch
+sync-apparmor-with-lxc.patch
diff -Nru docker.io-1.2.0~dfsg1/debian/patches/sync-apparmor-with-lxc.patch docker.io-1.2.0~dfsg1/debian/patches/sync-apparmor-with-lxc.patch
--- docker.io-1.2.0~dfsg1/debian/patches/sync-apparmor-with-lxc.patch	1969-12-31 18:00:00.000000000 -0600
+++ docker.io-1.2.0~dfsg1/debian/patches/sync-apparmor-with-lxc.patch	2014-10-01 13:23:40.000000000 -0500
@@ -0,0 +1,173 @@
+Author: Jamie Strandboge <[email protected]>
+Description: sync AppArmor policy up with current LXC/libvirt-lxc policy
+
+Index: docker.io-1.2.0~dfsg1/libcontainer/apparmor/gen.go
+===================================================================
+--- docker.io-1.2.0~dfsg1.orig/libcontainer/apparmor/gen.go
++++ docker.io-1.2.0~dfsg1/libcontainer/apparmor/gen.go
+@@ -22,40 +22,147 @@ profile {{.Name}} flags=(attach_disconne
+   {{$value}}
+ {{end}}
+ 
+-  network,
+-  capability,
++  # Globally allows everything to run under this profile. This is fine-tuned
++  # later
++  # in this profile and can be narrowed depending on the container's use.
+   file,
++  capability,
++  network,
++
++  # the container may never be allowed to mount devpts.  If it does, it
++  # will remount the host's devpts.  We could allow it to do it with
++  # the newinstance option (but, right now, we don't).
++  deny mount fstype=devpts,
++
+   umount,
+ 
++  # This also needs additional rules to reach outside of the container via
++  # DBus, so just let all of DBus within the container.
++  dbus,
++
++  # Allow us to ptrace ourselves
++  ptrace peer=@{profile_name},
++
++  # ignore DENIED message on / remount
++  deny mount options=(ro, remount) -> /,
++  deny mount options=(ro, remount, silent) -> /,
++
++  # allow tmpfs mounts everywhere
+   mount fstype=tmpfs,
++
++  # allow hugetlbfs mounts everywhere
++  mount fstype=hugetlbfs,
++
++  # allow mqueue mounts everywhere
+   mount fstype=mqueue,
++
++  # allow fuse mounts everywhere
+   mount fstype=fuse.*,
++
++  # deny writes in /proc/sys/fs but allow binfmt_misc to be mounted
+   mount fstype=binfmt_misc -> /proc/sys/fs/binfmt_misc/,
++  deny @{PROC}/sys/fs/** wklx,
++
++  # allow efivars to be mounted, writing to it will be blocked though
+   mount fstype=efivarfs -> /sys/firmware/efi/efivars/,
+-  mount fstype=fusectl -> /sys/fs/fuse/connections/,
+-  mount fstype=securityfs -> /sys/kernel/security/,
+-  mount fstype=debugfs -> /sys/kernel/debug/,
+-  mount fstype=proc -> /proc/,
+-  mount fstype=sysfs -> /sys/,
+ 
+-  deny @{PROC}/sys/fs/** wklx,
++  # block some other dangerous paths
+   deny @{PROC}/sysrq-trigger rwklx,
+   deny @{PROC}/mem rwklx,
+   deny @{PROC}/kmem rwklx,
+-  deny @{PROC}/sys/kernel/[^s][^h][^m]* wklx,
+-  deny @{PROC}/sys/kernel/*/** wklx,
+ 
+-  deny mount options=(ro, remount) -> /,
++  # deny writes in /sys except for /sys/fs/cgroup, also allow
++  # fusectl, securityfs and debugfs to be mounted there (read-only)
++  mount fstype=fusectl -> /sys/fs/fuse/connections/,
++  mount fstype=securityfs -> /sys/kernel/security/,
++  mount fstype=debugfs -> /sys/kernel/debug/,
+   deny mount fstype=debugfs -> /var/lib/ureadahead/debugfs/,
+-  deny mount fstype=devpts,
+-
+-  deny /sys/[^f]*/** wklx,
+-  deny /sys/f[^s]*/** wklx,
+-  deny /sys/fs/[^c]*/** wklx,
+-  deny /sys/fs/c[^g]*/** wklx,
+-  deny /sys/fs/cg[^r]*/** wklx,
++  mount fstype=proc -> /proc/,
++  mount fstype=sysfs -> /sys/,
+   deny /sys/firmware/efi/efivars/** rwklx,
+   deny /sys/kernel/security/** rwklx,
++  mount options=(move) /sys/fs/cgroup/cgmanager/ -> /sys/fs/cgroup/cgmanager.lower/,
++
++  mount options=(rw nosuid nodev noexec remount) -> /sys/,
++  mount options=(rw remount) -> /sys/kernel/security/,
++  mount options=(rw remount) -> /sys/fs/pstore/,
++  mount options=(ro remount) -> /sys/fs/pstore/,
++
++  deny /proc/sys/[^kn]*{,/**} wklx,
++  deny /proc/sys/k[^e]*{,/**} wklx,
++  deny /proc/sys/ke[^r]*{,/**} wklx,
++  deny /proc/sys/ker[^n]*{,/**} wklx,
++  deny /proc/sys/kern[^e]*{,/**} wklx,
++  deny /proc/sys/kerne[^l]*{,/**} wklx,
++  deny /proc/sys/kernel/[^smhd]*{,/**} wklx,
++  deny /proc/sys/kernel/d[^o]*{,/**} wklx,
++  deny /proc/sys/kernel/do[^m]*{,/**} wklx,
++  deny /proc/sys/kernel/dom[^a]*{,/**} wklx,
++  deny /proc/sys/kernel/doma[^i]*{,/**} wklx,
++  deny /proc/sys/kernel/domai[^n]*{,/**} wklx,
++  deny /proc/sys/kernel/domain[^n]*{,/**} wklx,
++  deny /proc/sys/kernel/domainn[^a]*{,/**} wklx,
++  deny /proc/sys/kernel/domainna[^m]*{,/**} wklx,
++  deny /proc/sys/kernel/domainnam[^e]*{,/**} wklx,
++  deny /proc/sys/kernel/domainname?*{,/**} wklx,
++  deny /proc/sys/kernel/h[^o]*{,/**} wklx,
++  deny /proc/sys/kernel/ho[^s]*{,/**} wklx,
++  deny /proc/sys/kernel/hos[^t]*{,/**} wklx,
++  deny /proc/sys/kernel/host[^n]*{,/**} wklx,
++  deny /proc/sys/kernel/hostn[^a]*{,/**} wklx,
++  deny /proc/sys/kernel/hostna[^m]*{,/**} wklx,
++  deny /proc/sys/kernel/hostnam[^e]*{,/**} wklx,
++  deny /proc/sys/kernel/hostname?*{,/**} wklx,
++  deny /proc/sys/kernel/m[^s]*{,/**} wklx,
++  deny /proc/sys/kernel/ms[^g]*{,/**} wklx,
++  deny /proc/sys/kernel/msg*/** wklx,
++  deny /proc/sys/kernel/s[^he]*{,/**} wklx,
++  deny /proc/sys/kernel/se[^m]*{,/**} wklx,
++  deny /proc/sys/kernel/sem*/** wklx,
++  deny /proc/sys/kernel/sh[^m]*{,/**} wklx,
++  deny /proc/sys/kernel/shm*/** wklx,
++  deny /proc/sys/kernel?*{,/**} wklx,
++  deny /proc/sys/n[^e]*{,/**} wklx,
++  deny /proc/sys/ne[^t]*{,/**} wklx,
++  deny /proc/sys/net?*{,/**} wklx,
++  deny /sys/[^fdc]*{,/**} wklx,
++  deny /sys/c[^l]*{,/**} wklx,
++  deny /sys/cl[^a]*{,/**} wklx,
++  deny /sys/cla[^s]*{,/**} wklx,
++  deny /sys/clas[^s]*{,/**} wklx,
++  deny /sys/class/[^n]*{,/**} wklx,
++  deny /sys/class/n[^e]*{,/**} wklx,
++  deny /sys/class/ne[^t]*{,/**} wklx,
++  deny /sys/class/net?*{,/**} wklx,
++  deny /sys/class?*{,/**} wklx,
++  deny /sys/d[^e]*{,/**} wklx,
++  deny /sys/de[^v]*{,/**} wklx,
++  deny /sys/dev[^i]*{,/**} wklx,
++  deny /sys/devi[^c]*{,/**} wklx,
++  deny /sys/devic[^e]*{,/**} wklx,
++  deny /sys/device[^s]*{,/**} wklx,
++  deny /sys/devices/[^v]*{,/**} wklx,
++  deny /sys/devices/v[^i]*{,/**} wklx,
++  deny /sys/devices/vi[^r]*{,/**} wklx,
++  deny /sys/devices/vir[^t]*{,/**} wklx,
++  deny /sys/devices/virt[^u]*{,/**} wklx,
++  deny /sys/devices/virtu[^a]*{,/**} wklx,
++  deny /sys/devices/virtua[^l]*{,/**} wklx,
++  deny /sys/devices/virtual/[^n]*{,/**} wklx,
++  deny /sys/devices/virtual/n[^e]*{,/**} wklx,
++  deny /sys/devices/virtual/ne[^t]*{,/**} wklx,
++  deny /sys/devices/virtual/net?*{,/**} wklx,
++  deny /sys/devices/virtual?*{,/**} wklx,
++  deny /sys/devices?*{,/**} wklx,
++  deny /sys/f[^s]*{,/**} wklx,
++  deny /sys/fs/[^c]*{,/**} wklx,
++  deny /sys/fs/c[^g]*{,/**} wklx,
++  deny /sys/fs/cg[^r]*{,/**} wklx,
++  deny /sys/fs/cgr[^o]*{,/**} wklx,
++  deny /sys/fs/cgro[^u]*{,/**} wklx,
++  deny /sys/fs/cgrou[^p]*{,/**} wklx,
++  deny /sys/fs/cgroup?*{,/**} wklx,
++  deny /sys/fs?*{,/**} wklx,
+ }
+ `
+ 

--- End Message ---
--- Begin Message ---
Thanks for the patch but it should be applied upstream and it is too old to 
forward. If this improvement is still valid then please consider reporting it 
to upstream developers.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Attachment: signature.asc
Description: This is a digitally signed message part.


--- End Message ---

Reply via email to