** Description changed:

- This bug/limitation is present in lxc from 1.0.7-0ubuntu0.5 through
- 1.0.7-0ubuntu0.9 (or anything that incorporates
- 0003-CVE-2015-1335.patch).  Basically, the limitation is obvious when
- using recursive bind mounts because ensure_not_symlink() only checks the
- last line of /proc/self/mountinfo which will be a submount so will
- always fail the test and trigger:
+ =======================================================================
+ SRU Justification
+ Impact: cannot start containers with lxc.mount.entries which are recursive 
bind mounts
+ Regression potential: this makes assumptions about the ordering of 
/proc/self/mountinfo, but no more so than the original CVE patch.  So it should 
not regress from the previous lxc version.
+ Test case:
+ 
+ #!/bin/sh
+ set -ex
+ cleanup() {
+         umount /mnt/etc /mnt/proc || true
+         lxc-stop -n t1 -k || true
+         lxc-destroy -n t1  || true
+ }
+ trap cleanup EXIT
+ mkdir -p /mnt/etc /mnt/proc
+ mount --bind /etc /mnt/etc
+ mount --bind /proc /mnt/proc
+ lxc-create -t download -n t1 -- -d ubuntu -r trusty -a amd64
+ cat >> /var/lib/lxc/t1/config << EOF
+ lxc.mount.entry = /mnt hostmnt none rbind,create=dir
+ EOF
+ lxc-start -n t1 -F -l trace -o /dev/stdout
+ echo "DONE"
+ 
+ =======================================================================
+ This bug/limitation is present in lxc from 1.0.7-0ubuntu0.5 through 
1.0.7-0ubuntu0.9 (or anything that incorporates 0003-CVE-2015-1335.patch).  
Basically, the limitation is obvious when using recursive bind mounts because 
ensure_not_symlink() only checks the last line of /proc/self/mountinfo which 
will be a submount so will always fail the test and trigger:
  
  ensure_not_symlink: 1413 Mount onto /usr/lib/x86_64-linux-
  gnu/lxc/storage resulted in /usr/lib/x86_64-linux-
  gnu/lxc/storage/submount, not /usr/lib/x86_64-linux-gnu/lxc/storage
  
  Sorry if this is a duplicate, I did spend quite some time trying to find
  a similar report.
  
  Thanks!

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to lxc in Ubuntu.
https://bugs.launchpad.net/bugs/1509752

Title:
  Bug in ensure_not_symlink() from 0003-CVE-2015-1335.patch

Status in lxc package in Ubuntu:
  Fix Released
Status in lxc source package in Trusty:
  New

Bug description:
  =======================================================================
  SRU Justification
  Impact: cannot start containers with lxc.mount.entries which are recursive 
bind mounts
  Regression potential: this makes assumptions about the ordering of 
/proc/self/mountinfo, but no more so than the original CVE patch.  So it should 
not regress from the previous lxc version.
  Test case:

  #!/bin/sh
  set -ex
  cleanup() {
          umount /mnt/etc /mnt/proc || true
          lxc-stop -n t1 -k || true
          lxc-destroy -n t1  || true
  }
  trap cleanup EXIT
  mkdir -p /mnt/etc /mnt/proc
  mount --bind /etc /mnt/etc
  mount --bind /proc /mnt/proc
  lxc-create -t download -n t1 -- -d ubuntu -r trusty -a amd64
  cat >> /var/lib/lxc/t1/config << EOF
  lxc.mount.entry = /mnt hostmnt none rbind,create=dir
  EOF
  lxc-start -n t1 -F -l trace -o /dev/stdout
  echo "DONE"

  =======================================================================
  This bug/limitation is present in lxc from 1.0.7-0ubuntu0.5 through 
1.0.7-0ubuntu0.9 (or anything that incorporates 0003-CVE-2015-1335.patch).  
Basically, the limitation is obvious when using recursive bind mounts because 
ensure_not_symlink() only checks the last line of /proc/self/mountinfo which 
will be a submount so will always fail the test and trigger:

  ensure_not_symlink: 1413 Mount onto /usr/lib/x86_64-linux-
  gnu/lxc/storage resulted in /usr/lib/x86_64-linux-
  gnu/lxc/storage/submount, not /usr/lib/x86_64-linux-gnu/lxc/storage

  Sorry if this is a duplicate, I did spend quite some time trying to
  find a similar report.

  Thanks!

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

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to