← Back to team overview

kernel-packages team mailing list archive

[Bug 1362199] Re: [FFe] apparmor abstract, anonymous and netlink socket mediation

 

** Also affects: cups (Ubuntu)
   Importance: Undecided
       Status: New

** Also affects: cups-filters (Ubuntu)
   Importance: Undecided
       Status: New

** Changed in: cups (Ubuntu)
       Status: New => In Progress

** Changed in: cups-filters (Ubuntu)
       Status: New => In Progress

** Changed in: linux (Ubuntu)
       Status: Incomplete => In Progress

** Changed in: cups (Ubuntu)
     Assignee: (unassigned) => Jamie Strandboge (jdstrand)

** Changed in: cups-filters (Ubuntu)
     Assignee: (unassigned) => Jamie Strandboge (jdstrand)

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1362199

Title:
  [FFe] apparmor abstract, anonymous and netlink socket mediation

Status in “apparmor” package in Ubuntu:
  In Progress
Status in “apparmor-easyprof-ubuntu” package in Ubuntu:
  In Progress
Status in “cups” package in Ubuntu:
  In Progress
Status in “cups-filters” package in Ubuntu:
  In Progress
Status in “isc-dhcp” package in Ubuntu:
  In Progress
Status in “libvirt” package in Ubuntu:
  In Progress
Status in “lightdm” package in Ubuntu:
  In Progress
Status in “linux” package in Ubuntu:
  In Progress
Status in “lxc” package in Ubuntu:
  Triaged
Status in “rsyslog” package in Ubuntu:
  In Progress

Bug description:
  Background: kernel and apparmor userspace updates to support abstract,
  anonymous and fine-grained netlink socket mediation. These packages
  are listed in one bug because they are related, but the FFes may be
  granted and the uploads may happen at different times.

  = linux =
  Summary:
  This feature freeze exception is requested for abstract, anonymous and fine-grained netlink socket via apparmor in the kernel. When used with a compatible apparmor userspace, 'unix' and 'network netlink' rules are supported. When used without a compatible apparmor userspace (eg, on a trusty system with an utopic backport kernel), abstract, anonymous and fine-grained netlink socket mediation is not enforced (ie, you can use this kernel with an old userspace without any issues).

  Testing:
  * 14.04 system with backported kernel: TODO
   * test-apparmor.py: TODO (runs extensive tests (upstream and distro))
   * exploratory manual testing: TODO (networking, aa-enforce with firefox, firefox works, apparmor blocks access, etc)
   * aa-status: TODO
   * lxc: TODO (containers can be created, started, shutdown)
   * libvirt: TODO (VMs started via openstack, and test-libvirt.py from QRT passes all tests)
  * 14.10 system (non-Touch) with current apparmor userspace: TODO (relevant parts of https://wiki.ubuntu.com/Process/Merges/TestPlans/AppArmor)
   * test-apparmor.py: TODO (runs extensive tests (upstream and distro))
   * exploratory manual testing: TODO (networking, aa-enforce with firefox, firefox works, apparmor blocks access, etc)
   * aa-status: TODO
   * lxc: TODO (containers can be created, started, shutdown)
   * libvirt: TODO (QRT/script/test-libvirt.py (though there are 3 failures unrelated to apparmor))
   * click-apparmor QRT touch image tests: TODO
   * apparmor-easyprof-ubuntu QRT touch image tests: TODO
  * 14.10 system (non-Touch) with updated apparmor userspace capable of supporting abstract, anonymous and fine-grained netlink socket: TODO (relevant parts of https://wiki.ubuntu.com/Process/Merges/TestPlans/AppArmor)
   * test-apparmor.py: TODO (runs extensive tests (upstream and distro))
   * exploratory manual testing: TODO (networking, aa-enforce with firefox, firefox works, apparmor blocks access, etc)
   * aa-status: TODO
   * lxc: TODO (containers can be created, started, shutdown)
   * libvirt: TODO (QRT/script/test-libvirt.py (though there are 3 failures unrelated to apparmor))
   * click-apparmor QRT touch image tests: TODO
   * apparmor-easyprof-ubuntu QRT touch image tests: TODO

  Justification:
  This feature is required to support comprehensive application confinement on Ubuntu Touch. This feature adds a security benefit to libvirt's qemu guest isolation which is fundamental to Ubuntu on Server/Cloud. This feature also adds a welcome improvement to administrators wishing to further protect their systems.

  = apparmor userspace =
  Summary:
  This feature freeze exception is requested for abstract, anonymous and fine-grained netlink socket for apparmor userspace. When used with a compatible kernel, 'unix' and 'network netlink' rules are supported. When used without a compatible apparmor userspace (eg, on a trusty system with an utopic backport kernel), abstract, anonymous and fine-grained netlink socket mediation is not enforced (ie, you can use this userspace with an old kernel without any issues).

  Testing:
  * 14.10 system with current kernel:
   * https://wiki.ubuntu.com/Process/Merges/TestPlans/AppArmor: TODO (includes click-apparmor, apparmor-easyprof-ubuntu, exploratory manual testing, etc)
  * 14.10 system with previous kernel lacking abstract, anonymous and fine-grained netlink socket mediation (non-Touch):
   * https://wiki.ubuntu.com/Process/Merges/TestPlans/AppArmor: TODO (exploratory manual testing, lxc, libvirt, etc)
   * test-apparmor.py: TODO
   * lightdm guest session: TODO (login, start browser, logout)
  * 14.10 system kernel capable of supporting abstract, anonymous and fine-grained netlink socket mediation (non-Touch):
   * https://wiki.ubuntu.com/Process/Merges/TestPlans/AppArmor: TODO (includes test-apparmor.py, exploratory manual testing, lxc, libvirt, etc)
   * Verify everything in https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/AppArmorProfiles: TODO (except juju since it doesn't have policy itself)
   * lightdm guest session: TODO (login, start browser, logout)

  Justification:
  This feature is required to support comprehensive application confinement on Ubuntu Touch. This feature adds a security benefit to libvirt's qemu guest isolation which is fundamental to Ubuntu on Server/Cloud. This feature also adds a welcome improvement to administrators wishing to further protect their systems.

  Extra information:
  While the apparmor userspace and kernel changes to support abstract, anonymous and fine-grained netlink socket can happen at different times, the apparmor userspace upload must correspond with uploads for packages that ship AppArmor policy that require updates (eg, libvirt, lxc, etc). The packages outlined in https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/AppArmorProfiles have been tested to either work without modification to the policy or updated and tested to work with updated policy. Common rules will be added to the apparmor base abstraction such that most packages shipping apparmor policy will not require updating. These updates will be prepared, tested and published en masse via a silo ppa.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/1362199/+subscriptions


References