CVE-2018-18955
In the Linux kernel 4.15.x through 4.19.x before 4.19.2, map_write() in kernel/user_namespace.c...
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.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
7.0
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.
- Record
CVE-2018-18955- CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 4.4 Medium
AV:L/AC:M/Au:N/C:P/I:P/A:P - Weakness
- CWE-863
- Updated
- 2026-11-02
CVE List No score
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.
- Record
CVE-2018-18955- Updated
- 2026-11-02
EUVDEUVD-2018-10659 No score
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.
- Record
EUVD-2018-10659- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-c6xj-3c77-g5rg
7.0
In the Linux kernel 4.15.x through 4.19.x before 4.19.2, map_write() in kernel/user_namespace.c...
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.
- Record
GHSA-c6xj-3c77-g5rg- CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-863
- Updated
- 2026-11-02
OSV
7.0
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.
- Record
CVE-2018-18955- CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2018-18955
7.0
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.
- Record
DEBIAN-CVE-2018-18955- CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Show 4 moreShow less
OSVUBUNTU-CVE-2018-18955
7.0
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.
- Record
UBUNTU-CVE-2018-18955- CVSS 3.0
- 7.0 High
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUSN-3833-1 No score
linux-aws vulnerabilities
Jann Horn discovered that the Linux kernel mishandles mapping UID or GID ranges inside nested user namespaces in some situations. A local attacker could use this to bypass access controls on resources outside the namespace. (CVE-2018-18955)
Philipp Wendler discovered that the overlayfs implementation in the Linux kernel did not properly verify the directory contents permissions from within a unprivileged user namespace. A local attacker could use this to expose sensitive information (protected file names). (CVE-2018-6559)
- Record
USN-3833-1- Updated
- 2026-11-02
OSVUSN-3836-1 No score
linux, linux-gcp, linux-kvm, linux-raspi2 vulnerabilities
Jann Horn discovered that the Linux kernel mishandles mapping UID or GID ranges inside nested user namespaces in some situations. A local attacker could use this to bypass access controls on resources outside the namespace. (CVE-2018-18955)
Philipp Wendler discovered that the overlayfs implementation in the Linux kernel did not properly verify the directory contents permissions from within a unprivileged user namespace. A local attacker could use this to expose sensitive information (protected file names). (CVE-2018-6559)
- Record
USN-3836-1- Updated
- 2026-11-02
OSVUSN-3836-2 No score
linux-hwe, linux-gcp vulnerabilities
USN-3836-1 fixed vulnerabilities in the Linux kernel for Ubuntu 18.04 LTS. This update provides the corresponding updates for the Linux Hardware Enablement (HWE) kernel from Ubuntu 18.04 LTS for Ubuntu 16.04 LTS.
Jann Horn discovered that the Linux kernel mishandles mapping UID or GID ranges inside nested user namespaces in some situations. A local attacker could use this to bypass access controls on resources outside the namespace. (CVE-2018-18955)
Philipp Wendler discovered that the overlayfs implementation in the Linux kernel did not properly verify the directory contents permissions from within a unprivileged user namespace. A local attacker could use this to expose sensitive information (protected file names). (CVE-2018-6559)
- Record
USN-3836-2- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
linuxDebian:12 |
before 4.18.20-1 | 4.18.20-1 |
linuxDebian:13 |
before 4.18.20-1 | 4.18.20-1 |
linuxDebian:14 |
before 4.18.20-1 | 4.18.20-1 |
linux-azureUbuntu:14.04:LTS |
before 4.15.0-1035.36~14.04.2, plus listed versions 4.15.0-1023.24~14.04.14.15.0-1030.31~14.04.14.15.0-1031.32~14.04.14.15.0-1032.33~14.04.2 |
4.15.0-1035.36~14.04.2 |
linux-azureUbuntu:16.04:LTS |
before 4.15.0-1035.36~16.04.1, plus listed versions 4.11.0-1009.94.11.0-1011.114.11.0-1013.134.11.0-1014.144.11.0-1015.15 Show 22 moreShow less4.11.0-1016.164.13.0-1005.74.13.0-1006.84.13.0-1007.94.13.0-1009.124.13.0-1011.144.13.0-1012.154.13.0-1014.174.13.0-1016.194.13.0-1018.214.15.0-1013.13~16.04.24.15.0-1014.14~16.04.14.15.0-1018.18~16.04.14.15.0-1019.19~16.04.14.15.0-1021.21~16.04.14.15.0-1022.22~16.04.14.15.0-1023.24~16.04.14.15.0-1025.26~16.04.14.15.0-1028.29~16.04.14.15.0-1030.31~16.04.14.15.0-1031.32~16.04.14.15.0-1032.33~16.04.1 |
4.15.0-1035.36~16.04.1 |
linux-gcpUbuntu:16.04:LTS |
before 4.15.0-1025.26~16.04.1, plus listed versions 4.10.0-1004.44.10.0-1006.64.10.0-1007.74.10.0-1008.84.10.0-1009.9 Show 18 moreShow less4.13.0-1002.54.13.0-1006.94.13.0-1007.104.13.0-1008.114.13.0-1011.154.13.0-1012.164.13.0-1013.174.13.0-1015.194.13.0-1017.214.13.0-1019.234.15.0-1014.14~16.04.14.15.0-1015.15~16.04.14.15.0-1017.18~16.04.14.15.0-1018.19~16.04.24.15.0-1019.20~16.04.14.15.0-1021.22~16.04.14.15.0-1023.24~16.04.14.15.0-1024.25~16.04.2 |
4.15.0-1025.26~16.04.1 |
linux-hweUbuntu:16.04:LTS |
before 4.15.0-42.45~16.04.1, plus listed versions 4.8.0-36.36~16.04.14.8.0-39.42~16.04.14.8.0-41.44~16.04.14.8.0-42.45~16.04.14.8.0-44.47~16.04.1 Show 38 moreShow less4.8.0-45.48~16.04.14.8.0-46.49~16.04.14.8.0-49.52~16.04.14.8.0-51.54~16.04.14.8.0-52.55~16.04.14.8.0-53.56~16.04.14.8.0-54.57~16.04.14.8.0-56.61~16.04.14.8.0-58.63~16.04.14.10.0-27.30~16.04.24.10.0-28.32~16.04.24.10.0-30.34~16.04.14.10.0-32.36~16.04.14.10.0-33.37~16.04.14.10.0-35.39~16.04.14.10.0-37.41~16.04.14.10.0-38.42~16.04.14.10.0-40.44~16.04.14.10.0-42.46~16.04.14.13.0-26.29~16.04.24.13.0-31.34~16.04.14.13.0-32.35~16.04.14.13.0-36.40~16.04.14.13.0-37.42~16.04.14.13.0-38.43~16.04.14.13.0-39.44~16.04.14.13.0-41.46~16.04.14.13.0-43.48~16.04.14.13.0-45.50~16.04.14.15.0-24.26~16.04.14.15.0-29.31~16.04.14.15.0-30.32~16.04.14.15.0-32.35~16.04.14.15.0-33.36~16.04.14.15.0-34.37~16.04.14.15.0-36.39~16.04.14.15.0-38.41~16.04.14.15.0-39.42~16.04.1 |
4.15.0-42.45~16.04.1 |
linuxUbuntu:18.04:LTS |
before 4.15.0-42.45, plus listed versions 4.13.0-16.194.13.0-17.204.13.0-25.294.13.0-32.354.15.0-10.11 Show 16 moreShow less4.15.0-12.134.15.0-13.144.15.0-15.164.15.0-19.204.15.0-20.214.15.0-22.244.15.0-23.254.15.0-24.264.15.0-29.314.15.0-30.324.15.0-32.354.15.0-33.364.15.0-34.374.15.0-36.394.15.0-38.414.15.0-39.42 |
4.15.0-42.45 |
linux-awsUbuntu:18.04:LTS |
before 4.15.0-1029.30, plus listed versions 4.15.0-1001.14.15.0-1003.34.15.0-1005.54.15.0-1006.64.15.0-1007.7 Show 11 moreShow less4.15.0-1009.94.15.0-1010.104.15.0-1011.114.15.0-1016.164.15.0-1017.174.15.0-1019.194.15.0-1020.204.15.0-1021.214.15.0-1023.234.15.0-1025.254.15.0-1027.27 |
4.15.0-1029.30 |
linux-azureUbuntu:18.04:LTS |
before 4.15.0-1035.36, plus listed versions 4.15.0-1002.24.15.0-1003.34.15.0-1004.44.15.0-1008.84.15.0-1009.9 Show 13 moreShow less4.15.0-1012.124.15.0-1013.134.15.0-1014.144.15.0-1018.184.15.0-1019.194.15.0-1021.214.15.0-1022.234.15.0-1023.244.15.0-1025.264.15.0-1028.294.15.0-1030.314.15.0-1031.324.15.0-1032.33 |
4.15.0-1035.36 |
Show 11 moreShow less
| Package | Affected | Fixed |
|---|---|---|
linux-gcpUbuntu:18.04:LTS |
before 4.15.0-1025.26, plus listed versions 4.15.0-1001.14.15.0-1003.34.15.0-1005.54.15.0-1006.64.15.0-1008.8 Show 10 moreShow less4.15.0-1009.94.15.0-1010.104.15.0-1014.144.15.0-1015.154.15.0-1017.184.15.0-1018.194.15.0-1019.204.15.0-1021.224.15.0-1023.244.15.0-1024.25 |
4.15.0-1025.26 |
linux-kvmUbuntu:18.04:LTS |
before 4.15.0-1027.27, plus listed versions 4.15.0-1002.24.15.0-1003.34.15.0-1004.44.15.0-1006.64.15.0-1008.8 Show 11 moreShow less4.15.0-1010.104.15.0-1011.114.15.0-1012.124.15.0-1016.164.15.0-1017.174.15.0-1019.194.15.0-1020.204.15.0-1021.214.15.0-1023.234.15.0-1025.254.15.0-1026.26 |
4.15.0-1027.27 |
linux-oemUbuntu:18.04:LTS |
before 4.15.0-1028.33, plus listed versions 4.15.0-1002.34.15.0-1004.54.15.0-1006.94.15.0-1008.114.15.0-1009.12 Show 8 moreShow less4.15.0-1012.154.15.0-1013.164.15.0-1015.184.15.0-1017.204.15.0-1018.214.15.0-1021.244.15.0-1024.294.15.0-1026.31 |
4.15.0-1028.33 |
linux-raspi2Ubuntu:18.04:LTS |
before 4.15.0-1029.31, plus listed versions 4.13.0-1005.54.13.0-1006.64.13.0-1008.84.15.0-1006.74.15.0-1009.10 Show 13 moreShow less4.15.0-1010.114.15.0-1011.124.15.0-1012.134.15.0-1013.144.15.0-1017.184.15.0-1018.194.15.0-1020.224.15.0-1021.234.15.0-1022.244.15.0-1024.264.15.0-1026.284.15.0-1027.294.15.0-1028.30 |
4.15.0-1029.31 |
linux-awsUbuntu:18.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-1029.30, plus listed versions 4.15.0-1001.14.15.0-1003.34.15.0-1005.54.15.0-1006.64.15.0-1007.7 Show 11 moreShow less4.15.0-1009.94.15.0-1010.104.15.0-1011.114.15.0-1016.164.15.0-1017.174.15.0-1019.194.15.0-1020.204.15.0-1021.214.15.0-1023.234.15.0-1025.254.15.0-1027.27 |
4.15.0-1029.30 |
linuxUbuntu:18.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-42.45, plus listed versions 4.13.0-16.194.13.0-17.204.13.0-25.294.13.0-32.354.15.0-10.11 Show 16 moreShow less4.15.0-12.134.15.0-13.144.15.0-15.164.15.0-19.204.15.0-20.214.15.0-22.244.15.0-23.254.15.0-24.264.15.0-29.314.15.0-30.324.15.0-32.354.15.0-33.364.15.0-34.374.15.0-36.394.15.0-38.414.15.0-39.42 |
4.15.0-42.45 |
linux-gcpUbuntu:18.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-1025.26, plus listed versions 4.15.0-1001.14.15.0-1003.34.15.0-1005.54.15.0-1006.64.15.0-1008.8 Show 10 moreShow less4.15.0-1009.94.15.0-1010.104.15.0-1014.144.15.0-1015.154.15.0-1017.184.15.0-1018.194.15.0-1019.204.15.0-1021.224.15.0-1023.244.15.0-1024.25 |
4.15.0-1025.26 |
linux-kvmUbuntu:18.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-1027.27, plus listed versions 4.15.0-1002.24.15.0-1003.34.15.0-1004.44.15.0-1006.64.15.0-1008.8 Show 11 moreShow less4.15.0-1010.104.15.0-1011.114.15.0-1012.124.15.0-1016.164.15.0-1017.174.15.0-1019.194.15.0-1020.204.15.0-1021.214.15.0-1023.234.15.0-1025.254.15.0-1026.26 |
4.15.0-1027.27 |
linux-raspi2Ubuntu:18.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-1029.31, plus listed versions 4.13.0-1005.54.13.0-1006.64.13.0-1008.84.15.0-1006.74.15.0-1009.10 Show 13 moreShow less4.15.0-1010.114.15.0-1011.124.15.0-1012.134.15.0-1013.144.15.0-1017.184.15.0-1018.194.15.0-1020.224.15.0-1021.234.15.0-1022.244.15.0-1024.264.15.0-1026.284.15.0-1027.294.15.0-1028.30 |
4.15.0-1029.31 |
linux-gcpUbuntu:16.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-1025.26~16.04.1, plus listed versions 4.10.0-1004.44.10.0-1006.64.10.0-1007.74.10.0-1008.84.10.0-1009.9 Show 18 moreShow less4.13.0-1002.54.13.0-1006.94.13.0-1007.104.13.0-1008.114.13.0-1011.154.13.0-1012.164.13.0-1013.174.13.0-1015.194.13.0-1017.214.13.0-1019.234.15.0-1014.14~16.04.14.15.0-1015.15~16.04.14.15.0-1017.18~16.04.14.15.0-1018.19~16.04.24.15.0-1019.20~16.04.14.15.0-1021.22~16.04.14.15.0-1023.24~16.04.14.15.0-1024.25~16.04.2 |
4.15.0-1025.26~16.04.1 |
linux-hweUbuntu:16.04:LTS From an advisory covering 2 CVEs |
before 4.15.0-42.45~16.04.1, plus listed versions 4.8.0-36.36~16.04.14.8.0-39.42~16.04.14.8.0-41.44~16.04.14.8.0-42.45~16.04.14.8.0-44.47~16.04.1 Show 38 moreShow less4.8.0-45.48~16.04.14.8.0-46.49~16.04.14.8.0-49.52~16.04.14.8.0-51.54~16.04.14.8.0-52.55~16.04.14.8.0-53.56~16.04.14.8.0-54.57~16.04.14.8.0-56.61~16.04.14.8.0-58.63~16.04.14.10.0-27.30~16.04.24.10.0-28.32~16.04.24.10.0-30.34~16.04.14.10.0-32.36~16.04.14.10.0-33.37~16.04.14.10.0-35.39~16.04.14.10.0-37.41~16.04.14.10.0-38.42~16.04.14.10.0-40.44~16.04.14.10.0-42.46~16.04.14.13.0-26.29~16.04.24.13.0-31.34~16.04.14.13.0-32.35~16.04.14.13.0-36.40~16.04.14.13.0-37.42~16.04.14.13.0-38.43~16.04.14.13.0-39.44~16.04.14.13.0-41.46~16.04.14.13.0-43.48~16.04.14.13.0-45.50~16.04.14.15.0-24.26~16.04.14.15.0-29.31~16.04.14.15.0-30.32~16.04.14.15.0-32.35~16.04.14.15.0-33.36~16.04.14.15.0-34.37~16.04.14.15.0-36.39~16.04.14.15.0-38.41~16.04.14.15.0-39.42~16.04.1 |
4.15.0-42.45~16.04.1 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| Metasploit | Linux Nested User Namespace idmap Limit Local Privilege Escalation | 2018-11-15 |
| Exploit-DB | Linux - Broken uid/gid Mapping for Nested User Namespaces | 2018-11-16 |
| Exploit-DB | Linux Kernel 4.15.x < 4.19.2 - 'map_write() CAP_SYS_ADMIN' Local Privilege Escalation (cron Method) | 2018-11-21 |
| Exploit-DB | Linux Kernel 4.15.x < 4.19.2 - 'map_write() CAP_SYS_ADMIN' Local Privilege Escalation (ldpreload Method) | 2018-11-21 |
| Exploit-DB | Linux - Nested User Namespace idmap Limit Local Privilege Escalation (Metasploit) | 2018-11-29 |
| Exploit-DB | Linux Kernel 4.15.x < 4.19.2 - 'map_write() CAP_SYS_ADMIN' Local Privilege Escalation (dbus Method) | 2019-01-04 |
| Exploit-DB | Linux Kernel 4.15.x < 4.19.2 - 'map_write() CAP_SYS_ADMIN' Local Privilege Escalation (polkit Method) | 2019-01-04 |
| PoC in GitHub | scheatkode/CVE-2018-18955 | 2022-01-19 |
| PoC in GitHub | WhatsWrongAndWhy/CVE-2018-18955 | 2026-07-21 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, exploits, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, Exploit-DB, GitHub Advisories, Metasploit, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2018-18955 is a high vulnerability (CVSS 7.0) in Linux Kernel, published November 16, 2018. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 7.67%, the 94th percentile. Fixed in linux 4.18.20-1.
References
github.com/torvalds/linux/commit/d2f007dbe7e4c9583eea6eb04d60001e85c6f1bd
cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.19
usn.ubuntu.com/3836-2
usn.ubuntu.com/3835-1
bugs.chromium.org/p/project-zero/issues/detail?id=1712
git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=d2f007dbe7e4c9583eea6eb04d60001e85c6f1bd
Show 20 moreShow less
usn.ubuntu.com/3833-1
usn.ubuntu.com/3832-1
exploit-db.com/exploits/45915
cdn.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.2
exploit-db.com/exploits/45886
usn.ubuntu.com/3836-1
securityfocus.com/bid/105941
support.f5.com/csp/article/K39103040
security.netapp.com/advisory/ntap-20190416-0003
nvd.nist.gov/vuln/detail/CVE-2018-18955
github.com/advisories/GHSA-c6xj-3c77-g5rg
security-tracker.debian.org/tracker/CVE-2018-18955
ubuntu.com/security/CVE-2018-18955
ubuntu.com/security/notices/USN-3832-1
ubuntu.com/security/notices/USN-3833-1
ubuntu.com/security/notices/USN-3836-1
ubuntu.com/security/notices/USN-3835-1
ubuntu.com/security/notices/USN-3836-2
cve.org/CVERecord?id=CVE-2018-18955
ubuntu.com/security/CVE-2018-6559