In the Linux kernel 4.15.x through 4.19.x before 4.19.2, map_write() in kernel/user_namespace.c allows privilege escalation because it mishandles nested user namespaces with more than 5 UID or GID ranges. A user who has CAP_SYS_ADMIN in an affected user namespace can bypass access controls on resources outside the namespace, as demonstrated by reading /etc/shadow. This occurs because an ID transformation takes place properly for the namespaced-to-kernel direction but not for the kernel-to-namespaced direction.
The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Linux_kernel | Linux | 4.15 (including) | 4.19.2 (excluding) |
Linux | Ubuntu | bionic | * |
Linux | Ubuntu | cosmic | * |
Linux | Ubuntu | esm-infra/bionic | * |
Linux | Ubuntu | upstream | * |
Linux-aws | Ubuntu | bionic | * |
Linux-aws | Ubuntu | cosmic | * |
Linux-aws | Ubuntu | esm-infra/bionic | * |
Linux-aws | Ubuntu | upstream | * |
Linux-aws-hwe | Ubuntu | upstream | * |
Linux-azure | Ubuntu | bionic | * |
Linux-azure | Ubuntu | cosmic | * |
Linux-azure | Ubuntu | esm-infra-legacy/trusty | * |
Linux-azure | Ubuntu | esm-infra/bionic | * |
Linux-azure | Ubuntu | esm-infra/xenial | * |
Linux-azure | Ubuntu | trusty | * |
Linux-azure | Ubuntu | trusty/esm | * |
Linux-azure | Ubuntu | upstream | * |
Linux-azure | Ubuntu | xenial | * |
Linux-azure-edge | Ubuntu | bionic | * |
Linux-azure-edge | Ubuntu | esm-infra/bionic | * |
Linux-azure-edge | Ubuntu | upstream | * |
Linux-azure-edge | Ubuntu | xenial | * |
Linux-euclid | Ubuntu | upstream | * |
Linux-flo | Ubuntu | trusty | * |
Linux-flo | Ubuntu | upstream | * |
Linux-flo | Ubuntu | xenial | * |
Linux-gcp | Ubuntu | bionic | * |
Linux-gcp | Ubuntu | cosmic | * |
Linux-gcp | Ubuntu | esm-infra/bionic | * |
Linux-gcp | Ubuntu | esm-infra/xenial | * |
Linux-gcp | Ubuntu | upstream | * |
Linux-gcp | Ubuntu | xenial | * |
Linux-gcp-edge | Ubuntu | upstream | * |
Linux-gke | Ubuntu | upstream | * |
Linux-gke | Ubuntu | xenial | * |
Linux-goldfish | Ubuntu | trusty | * |
Linux-goldfish | Ubuntu | upstream | * |
Linux-goldfish | Ubuntu | xenial | * |
Linux-grouper | Ubuntu | trusty | * |
Linux-grouper | Ubuntu | upstream | * |
Linux-hwe | Ubuntu | esm-infra/xenial | * |
Linux-hwe | Ubuntu | upstream | * |
Linux-hwe | Ubuntu | xenial | * |
Linux-hwe-edge | Ubuntu | esm-infra/xenial | * |
Linux-hwe-edge | Ubuntu | upstream | * |
Linux-hwe-edge | Ubuntu | xenial | * |
Linux-kvm | Ubuntu | bionic | * |
Linux-kvm | Ubuntu | cosmic | * |
Linux-kvm | Ubuntu | esm-infra/bionic | * |
Linux-kvm | Ubuntu | upstream | * |
Linux-lts-trusty | Ubuntu | upstream | * |
Linux-lts-utopic | Ubuntu | trusty | * |
Linux-lts-utopic | Ubuntu | upstream | * |
Linux-lts-vivid | Ubuntu | trusty | * |
Linux-lts-vivid | Ubuntu | upstream | * |
Linux-lts-wily | Ubuntu | trusty | * |
Linux-lts-wily | Ubuntu | upstream | * |
Linux-lts-xenial | Ubuntu | upstream | * |
Linux-maguro | Ubuntu | trusty | * |
Linux-maguro | Ubuntu | upstream | * |
Linux-mako | Ubuntu | trusty | * |
Linux-mako | Ubuntu | upstream | * |
Linux-mako | Ubuntu | xenial | * |
Linux-manta | Ubuntu | trusty | * |
Linux-manta | Ubuntu | upstream | * |
Linux-oem | Ubuntu | bionic | * |
Linux-oem | Ubuntu | cosmic | * |
Linux-oem | Ubuntu | esm-infra/bionic | * |
Linux-oem | Ubuntu | upstream | * |
Linux-oem | Ubuntu | xenial | * |
Linux-oracle | Ubuntu | upstream | * |
Linux-raspi2 | Ubuntu | bionic | * |
Linux-raspi2 | Ubuntu | cosmic | * |
Linux-raspi2 | Ubuntu | upstream | * |
Linux-snapdragon | Ubuntu | upstream | * |