CVE-2016-1576
Published: 22 February 2016
The overlayfs implementation in the Linux kernel through 4.5.2 does not properly restrict the mount namespace, which allows local users to gain privileges by mounting an overlayfs filesystem on top of a FUSE filesystem, and then executing a crafted setuid program.
From the Ubuntu Security Team
halfdog discovered that OverlayFS, when mounting on top of a FUSE mount, incorrectly propagated file attributes, including setuid. A local unprivileged attacker could use this to gain privileges.
Notes
Author | Note |
---|---|
jdstrand | android kernels (flo, goldfish, grouper, maguro, mako and manta) are not supported on the Ubuntu Touch 14.10 and earlier preview kernels linux-lts-saucy no longer receives official support linux-lts-quantal no longer receives official support |
sbeattie | precise does not allow unprivileged user namespaces, which is what lets an unprivileged user exploit this vulnerability; however, the issue of copying up setuid attributes still exists in the overlayfs codebase here, but it is a much lower priority to fix (needs root/CAP_SYS_ADMIN to exploit). |
Priority
Status
Package | Release | Status |
---|---|---|
linux Launchpad, Ubuntu, Debian |
precise |
Not vulnerable
(no user-namespace mounts)
|
trusty |
Released
(3.13.0-79.123)
|
|
upstream |
Needed
|
|
vivid |
Released
(3.19.0-51.57)
|
|
wily |
Released
(4.2.0-30.35)
|
|
xenial |
Not vulnerable
(4.4.0-8.23)
|
|
yakkety |
Not vulnerable
(4.8.0-14.15)
|
|
zesty |
Not vulnerable
(4.8.0-22.24)
|
|
Patches: Introduced by e9be9d5e76e34872f0c37d72e25bc27fe9e2c54c|local-overlayfs-backport Introduced by e9be9d5e76e34872f0c37d72e25bc27fe9e2c54c|local-overlayfs-backport |
||
linux-armadaxp Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was needed)
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
This package is not directly supported by the Ubuntu Security Team | ||
linux-aws Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Not vulnerable
(4.4.0-1002.2)
|
|
upstream |
Needed
|
|
xenial |
Not vulnerable
(4.4.0-1001.10)
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-flo Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was ignored)
|
|
upstream |
Needed
|
|
vivid |
Ignored
(abandoned)
|
|
wily |
Ignored
(reached end-of-life)
|
|
xenial |
Ignored
(abandoned)
|
|
yakkety |
Ignored
(abandoned)
|
|
zesty |
Does not exist
|
|
linux-gke Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
xenial |
Not vulnerable
(4.4.0-1003.3)
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-goldfish Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was ignored)
|
|
upstream |
Needed
|
|
vivid |
Ignored
(abandoned)
|
|
wily |
Ignored
(reached end-of-life)
|
|
xenial |
Ignored
(abandoned)
|
|
yakkety |
Ignored
(abandoned)
|
|
zesty |
Ignored
(abandoned)
|
|
linux-grouper Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was ignored)
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-hwe Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
xenial |
Not vulnerable
(4.8.0-36.36~16.04.1)
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-hwe-edge Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
xenial |
Not vulnerable
(4.8.0-36.36~16.04.1)
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-linaro-omap Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [abandoned])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-linaro-shared Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [abandoned])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-linaro-vexpress Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [abandoned])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-lts-quantal Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [end-of-life])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
This package is not directly supported by the Ubuntu Security Team | ||
linux-lts-raring Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [end-of-life])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-lts-saucy Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [end-of-life])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
This package is not directly supported by the Ubuntu Security Team | ||
linux-lts-trusty Launchpad, Ubuntu, Debian |
precise |
Released
(3.13.0-79.123~precise1)
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-lts-utopic Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was released [3.16.0-62.82~14.04.1])
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-lts-vivid Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was released [3.19.0-51.57~14.04.1])
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-lts-wily Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was released [4.2.0-30.35~14.04.1])
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-lts-xenial Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Not vulnerable
(4.4.0-13.29~14.04.1)
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-maguro Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was ignored)
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-mako Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was ignored)
|
|
upstream |
Needed
|
|
vivid |
Ignored
(abandoned)
|
|
wily |
Ignored
(reached end-of-life)
|
|
xenial |
Ignored
(abandoned)
|
|
yakkety |
Ignored
(abandoned)
|
|
zesty |
Does not exist
|
|
linux-manta Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
(trusty was ignored)
|
|
upstream |
Needed
|
|
vivid |
Ignored
(abandoned)
|
|
wily |
Ignored
(reached end-of-life)
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-qcm-msm Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was ignored [abandoned])
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
|
linux-raspi2 Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Released
(4.2.0-1025.32)
|
|
xenial |
Not vulnerable
(4.4.0-1003.4)
|
|
yakkety |
Not vulnerable
(4.4.0-1009.10)
|
|
zesty |
Not vulnerable
(4.8.0-1013.15)
|
|
linux-snapdragon Launchpad, Ubuntu, Debian |
precise |
Does not exist
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
wily |
Does not exist
|
|
xenial |
Not vulnerable
(4.4.0-1012.12)
|
|
yakkety |
Not vulnerable
(4.4.0-1012.12)
|
|
zesty |
Not vulnerable
(4.4.0-1029.32)
|
|
linux-ti-omap4 Launchpad, Ubuntu, Debian |
precise |
Does not exist
(precise was needed)
|
trusty |
Does not exist
|
|
upstream |
Needed
|
|
vivid |
Does not exist
|
|
wily |
Does not exist
|
|
xenial |
Does not exist
|
|
yakkety |
Does not exist
|
|
zesty |
Does not exist
|
Severity score breakdown
Parameter | Value |
---|---|
Base score | 7.8 |
Attack vector | Local |
Attack complexity | Low |
Privileges required | Low |
User interaction | None |
Scope | Unchanged |
Confidentiality | High |
Integrity impact | High |
Availability impact | High |
Vector | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
References
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1576
- http://www.halfdog.net/Security/2016/OverlayfsOverFusePrivilegeEscalation/
- https://ubuntu.com/security/notices/USN-2910-1
- https://ubuntu.com/security/notices/USN-2908-3
- https://ubuntu.com/security/notices/USN-2908-1
- https://ubuntu.com/security/notices/USN-2907-1
- https://ubuntu.com/security/notices/USN-2909-1
- https://ubuntu.com/security/notices/USN-2907-2
- https://ubuntu.com/security/notices/USN-2908-2
- https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/trusty/commit/?id=ce550fb847b34553e63ee95386de59a1096fbfc4
- https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/trusty/commit/?id=d77014a9527a4544797b9f1f2026b8e9fe032355
- NVD
- Launchpad
- Debian