Every CVE Search/ Get API key

CVE-2020-25221

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege...

7.8 HighFix available

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

0.67%Down 0.8 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.8

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
CVE-2020-25221
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
7.2 HighAV:L/AC:L/Au:N/C:C/I:C/A:C
Weakness
CWE-672
Updated
2026-11-02
CVE List No score

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
CVE-2020-25221
Updated
2026-11-02
EUVDEUVD-2020-17911 No score

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
EUVD-2020-17911
Updated
2026-11-03
GitHub AdvisoriesGHSA-442r-3r9f-48cm 7.8

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege...

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
GHSA-442r-3r9f-48cm
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-672
Updated
2026-11-02
OSV 7.8

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
CVE-2020-25221
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2020-25221 7.8

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
DEBIAN-CVE-2020-25221
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2020-25221 7.8

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv(), aka CID-9fa2dd946743.

Record
UBUNTU-CVE-2020-25221
CVSS 3.1
7.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Updated
2026-11-06
OSVMGASA-2020-0392 No score

Updated kernel packages fix security vulnerabilities

A flaw was found in the way the Linux kernel Bluetooth implementation handled L2CAP packets with A2MP CID. A remote attacker in adjacent range could use this flaw to crash the system causing denial of service or potentially execute arbitrary code on the system by sending a specially crafted L2CAP packet. The highest threat from this vulnerability is to data confidentiality and integrity as well as system availability (CVE-2020-12351).

An information leak flaw was found in the way the Linux kernel's Bluetooth stack implementation handled initialization of stack memory when handling certain AMP packets. A remote attacker in adjacent range could use this flaw to leak small portions of stack memory on the system by sending a specially crafted AMP packets. The highest threat from this vulnerability is to data confidentiality (CVE-2020-12352).

A flaw was found in the Linux kernel before 5.9-rc4. A failure of the file system metadata validator in XFS can cause an inode with a valid, user-creatable extended attribute to be flagged as corrupt. This can lead to the filesystem being shutdown, or otherwise rendered inaccessible until it is remounted, leading to a denial of service. The highest threat from this vulnerability is to system availability (CVE-2020-14385).

A flaw was found in the Linux kernel before 5.9-rc4. Memory corruption can be exploited to gain root privileges from unprivileged processes. The highest threat from this vulnerability is to data confidentiality and integrity (CVE-2020-14386).

A flaw was found in the Linux kernel in versions before 5.9-rc6. When changing screen size, an out-of-bounds memory write can occur leading to memory corruption or a denial of service. Due to the nature of the flaw, privilege escalation cannot be fully ruled out (CVE-2020-14390).

A heap buffer overflow flaw was found in the way the Linux kernel’s Bluetooth implementation processed extended advertising report events. This flaw allows a remote attacker in an adjacent range to crash the system, causing a denial of service or to potentially execute arbitrary code on the system by sending a specially crafted Bluetooth packet. The highest threat from this vulnerability is to confidentiality, integrity, as well as system availability (CVE-2020-24490).

In the Linux kernel through 5.8.7, local attackers able to inject conntrack netlink configuration could overflow a local buffer, causing crashes or triggering use of incorrect protocol numbers in ctnetlink_parse_tuple_filter in net/netfilter/nf_conntrack_netlink.c (CVE-2020-25211).

get_gate_page in mm/gup.c in the Linux kernel 5.7.x and 5.8.x before 5.8.7 allows privilege escalation because of incorrect reference counting (caused by gate page mishandling) of the struct page that backs the vsyscall page. The result is a refcount underflow. This can be triggered by any 64-bit process that can use ptrace() or process_vm_readv() (CVE-2020-25221).

The rbd block device driver in drivers/block/rbd.c in the Linux kernel through 5.8.9 used incomplete permission checking for access to rbd devices, which could be leveraged by local attackers to map or unmap rbd block devices (CVE-2020-25284).

A race condition between hugetlb sysctl handlers in mm/hugetlb.c in the Linux kernel before 5.8.8 could be used by local attackers to corrupt memory, cause a NULL pointer dereference, or possibly have unspecified other impact (CVE-2020-25285).

A flaw was found in the Linux kernel's implementation of biovecs in versions before 5.9-rc7. A zero-length biovec request issued by the block subsystem could cause the kernel to enter an infinite loop, causing a denial of service. This flaw allows a local attacker with basic privileges to issue requests to a block device, resulting in a denial of service. The highest threat from this vulnerability is to system availability (CVE-2020-25641).

A flaw was found in the HDLC_PPP module of the Linux kernel in versions before 5.9-rc7. Memory corruption and a read overflow is…

Record
MGASA-2020-0392
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
linux
Debian:12
before 5.8.7-1
5.8.7-1
linux
Debian:13
before 5.8.7-1
5.8.7-1
linux
Debian:14
before 5.8.7-1
5.8.7-1
kernel
Mageia:7
From an advisory covering 13 CVEs
before 5.7.19-3.mga7
5.7.19-3.mga7
kmod-virtualbox
Mageia:7
From an advisory covering 13 CVEs
before 6.0.24-6.mga7
6.0.24-6.mga7
xtables-addons
Mageia:7
From an advisory covering 13 CVEs
before 3.11-1.mga7
3.11-1.mga7
kmod-xtables-addons
Mageia:7
From an advisory covering 13 CVEs
before 3.11-1.mga7
3.11-1.mga7
linux
Ubuntu:Pro:14.04:LTS
All versions, plus listed versions
3.11.0-12.193.12.0-1.33.12.0-2.53.12.0-2.73.12.0-3.8
Show 45 moreShow less
3.12.0-3.93.12.0-4.103.12.0-4.123.12.0-5.133.12.0-7.153.13.0-1.163.13.0-2.173.13.0-3.183.13.0-4.193.13.0-5.203.13.0-6.233.13.0-7.253.13.0-7.263.13.0-8.273.13.0-8.283.13.0-10.303.13.0-11.313.13.0-12.323.13.0-13.333.13.0-14.343.13.0-15.353.13.0-16.363.13.0-17.373.13.0-18.383.13.0-19.393.13.0-19.403.13.0-20.423.13.0-21.433.13.0-22.443.13.0-23.453.13.0-24.463.13.0-24.473.13.0-27.503.13.0-29.533.13.0-30.543.13.0-30.553.13.0-32.573.13.0-33.583.13.0-34.603.13.0-35.623.13.0-36.633.13.0-37.643.13.0-39.663.13.0-40.693.13.0-41.70
None known
linux-aws
Ubuntu:Pro:14.04:LTS
All versions, plus listed versions
4.4.0-1002.24.4.0-1003.34.4.0-1005.54.4.0-1006.64.4.0-1009.9
Show 45 moreShow less
4.4.0-1010.104.4.0-1011.114.4.0-1012.124.4.0-1014.144.4.0-1016.164.4.0-1017.174.4.0-1019.194.4.0-1022.224.4.0-1023.234.4.0-1024.254.4.0-1025.264.4.0-1027.304.4.0-1028.314.4.0-1029.324.4.0-1031.344.4.0-1032.354.4.0-1034.374.4.0-1036.394.4.0-1037.404.4.0-1038.414.4.0-1039.424.4.0-1040.434.4.0-1042.454.4.0-1044.474.4.0-1045.484.4.0-1046.504.4.0-1048.524.4.0-1050.544.4.0-1052.564.4.0-1054.584.4.0-1055.594.4.0-1056.604.4.0-1058.624.4.0-1059.634.4.0-1060.644.4.0-1061.654.4.0-1062.664.4.0-1064.684.4.0-1065.694.4.0-1066.704.4.0-1067.714.4.0-1073.774.4.0-1074.784.4.0-1075.794.4.0-1076.80
None known
linux-azure
Ubuntu:Pro:14.04:LTS
All versions, 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.24.15.0-1035.36~14.04.2
Show 45 moreShow less
4.15.0-1036.38~14.04.24.15.0-1037.39~14.04.24.15.0-1039.41~14.04.24.15.0-1040.44~14.04.14.15.0-1041.45~14.04.14.15.0-1042.46~14.04.14.15.0-1045.49~14.04.14.15.0-1046.50~14.04.14.15.0-1047.51~14.04.14.15.0-1049.54~14.04.14.15.0-1050.55~14.04.14.15.0-1051.56~14.04.14.15.0-1052.57~14.04.14.15.0-1055.60~14.04.14.15.0-1056.61~14.04.14.15.0-1057.62~14.04.14.15.0-1059.64~14.04.14.15.0-1060.65~14.04.14.15.0-1061.66~14.04.14.15.0-1063.68~14.04.14.15.0-1064.69~14.04.14.15.0-1066.71~14.04.14.15.0-1067.72~14.04.14.15.0-1069.74~14.04.14.15.0-1071.76~14.04.14.15.0-1074.79~14.04.14.15.0-1077.82~14.04.14.15.0-1082.92~14.04.14.15.0-1083.93~14.04.14.15.0-1089.99~14.04.14.15.0-1091.101~14.04.14.15.0-1092.102~14.04.14.15.0-1093.103~14.04.14.15.0-1095.105~14.04.14.15.0-1096.106~14.04.14.15.0-1098.109~14.04.14.15.0-1100.111~14.04.14.15.0-1102.113~14.04.14.15.0-1103.114~14.04.14.15.0-1106.118~14.04.14.15.0-1108.120~14.04.14.15.0-1109.121~14.04.14.15.0-1110.122~14.04.14.15.0-1111.123~14.04.14.15.0-1112.124~14.04.1
None known
Show 14 moreShow less
Affected packages
PackageAffectedFixed
linux-lts-xenial
Ubuntu:Pro:14.04:LTS
All versions, plus listed versions
4.4.0-13.29~14.04.14.4.0-14.30~14.04.24.4.0-15.31~14.04.14.4.0-18.34~14.04.14.4.0-21.37~14.04.1
Show 45 moreShow less
4.4.0-22.39~14.04.14.4.0-22.40~14.04.14.4.0-24.43~14.04.14.4.0-28.47~14.04.14.4.0-31.50~14.04.14.4.0-34.53~14.04.14.4.0-36.55~14.04.14.4.0-38.57~14.04.14.4.0-42.62~14.04.14.4.0-45.66~14.04.14.4.0-47.68~14.04.14.4.0-51.72~14.04.14.4.0-53.74~14.04.14.4.0-57.78~14.04.14.4.0-59.80~14.04.14.4.0-62.83~14.04.14.4.0-63.84~14.04.24.4.0-64.85~14.04.14.4.0-66.87~14.04.14.4.0-67.88~14.04.14.4.0-70.91~14.04.14.4.0-71.92~14.04.14.4.0-72.93~14.04.14.4.0-75.96~14.04.14.4.0-78.99~14.04.24.4.0-79.100~14.04.14.4.0-81.104~14.04.14.4.0-83.106~14.04.14.4.0-87.110~14.04.14.4.0-89.112~14.04.14.4.0-91.114~14.04.14.4.0-92.115~14.04.14.4.0-93.116~14.04.14.4.0-96.119~14.04.14.4.0-97.120~14.04.14.4.0-98.121~14.04.14.4.0-101.124~14.04.14.4.0-103.126~14.04.14.4.0-104.127~14.04.14.4.0-108.131~14.04.14.4.0-109.132~14.04.14.4.0-111.134~14.04.14.4.0-112.135~14.04.14.4.0-116.140~14.04.14.4.0-119.143~14.04.1
None known
linux-hwe-edge
Ubuntu:16.04:LTS
All versions, plus listed versions
4.8.0-28.30~16.04.14.8.0-30.32~16.04.14.8.0-32.34~16.04.14.8.0-34.36~16.04.14.10.0-14.16~16.04.1
Show 18 moreShow less
4.10.0-19.21~16.04.14.10.0-20.22~16.04.14.10.0-21.23~16.04.14.10.0-22.24~16.04.14.10.0-24.28~16.04.14.10.0-26.30~16.04.14.11.0-13.19~16.04.14.11.0-14.20~16.04.14.13.0-16.19~16.04.34.13.0-17.20~16.04.14.13.0-19.22~16.04.14.13.0-21.24~16.04.14.13.0-25.29~16.04.24.15.0-13.14~16.04.14.15.0-15.16~16.04.14.15.0-20.21~16.04.14.15.0-22.24~16.04.14.15.0-23.25~16.04.1
None known
linux-aws-5.0
Ubuntu:18.04:LTS
All versions, plus listed versions
5.0.0-1021.24~18.04.15.0.0-1022.25~18.04.15.0.0-1023.26~18.04.15.0.0-1024.27~18.04.15.0.0-1025.285.0.0-1027.30
None known
linux-aws-5.3
Ubuntu:18.04:LTS
All versions, plus listed versions
5.3.0-1016.17~18.04.15.3.0-1017.18~18.04.15.3.0-1019.21~18.04.15.3.0-1023.25~18.04.15.3.0-1028.30~18.04.1
Show 5 moreShow less
5.3.0-1030.32~18.04.15.3.0-1032.34~18.04.25.3.0-1033.355.3.0-1034.365.3.0-1035.37
None known
linux-azure
Ubuntu:18.04:LTS
All versions, 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 39 moreShow less
4.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.334.15.0-1035.364.15.0-1036.384.15.0-1037.394.18.0-1011.11~18.04.14.18.0-1013.13~18.04.14.18.0-1014.14~18.04.14.18.0-1018.18~18.04.14.18.0-1019.19~18.04.14.18.0-1020.20~18.04.14.18.0-1023.24~18.04.14.18.0-1024.25~18.04.14.18.0-1025.27~18.04.15.0.0-1014.14~18.04.15.0.0-1016.17~18.04.15.0.0-1018.19~18.04.15.0.0-1020.21~18.04.15.0.0-1022.23~18.04.15.0.0-1023.24~18.04.15.0.0-1025.27~18.04.15.0.0-1027.29~18.04.15.0.0-1028.30~18.04.15.0.0-1029.31~18.04.15.0.0-1031.335.0.0-1032.345.0.0-1035.375.0.0-1036.38
None known
linux-azure-5.3
Ubuntu:18.04:LTS
All versions, plus listed versions
5.3.0-1007.8~18.04.15.3.0-1008.9~18.04.15.3.0-1009.10~18.04.15.3.0-1010.11~18.04.15.3.0-1012.13~18.04.1
Show 11 moreShow less
5.3.0-1013.14~18.04.15.3.0-1016.17~18.04.15.3.0-1018.19~18.04.15.3.0-1019.20~18.04.15.3.0-1020.21~18.04.15.3.0-1022.23~18.04.15.3.0-1028.29~18.04.15.3.0-1031.32~18.04.15.3.0-1032.33~18.04.15.3.0-1034.35~18.04.15.3.0-1035.36
None known
linux-azure-edge
Ubuntu:18.04:LTS
All versions, plus listed versions
4.18.0-1006.6~18.04.14.18.0-1007.7~18.04.14.18.0-1008.8~18.04.15.0.0-1012.12~18.04.2
None known
linux-gcp
Ubuntu:18.04:LTS
All versions, 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 33 moreShow less
4.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.254.15.0-1025.264.15.0-1026.274.15.0-1027.284.15.0-1028.294.15.0-1029.314.15.0-1030.324.15.0-1032.344.15.0-1033.354.15.0-1034.364.15.0-1036.384.15.0-1037.394.15.0-1040.424.15.0-1042.454.15.0-1044.705.0.0-1020.20~18.04.15.0.0-1021.21~18.04.15.0.0-1025.26~18.04.15.0.0-1026.27~18.04.15.0.0-1028.29~18.04.15.0.0-1029.30~18.04.15.0.0-1031.325.0.0-1033.345.0.0-1034.35
None known
linux-gcp-5.3
Ubuntu:18.04:LTS
All versions, plus listed versions
5.3.0-1008.9~18.04.15.3.0-1009.10~18.04.15.3.0-1010.11~18.04.15.3.0-1012.13~18.04.15.3.0-1014.15~18.04.1
Show 8 moreShow less
5.3.0-1016.17~18.04.15.3.0-1017.18~18.04.15.3.0-1018.19~18.04.15.3.0-1020.22~18.04.15.3.0-1026.28~18.04.15.3.0-1029.31~18.04.15.3.0-1030.32~18.04.15.3.0-1032.34~18.04.1
None known
linux-gcp-edge
Ubuntu:18.04:LTS
All versions, plus listed versions
4.18.0-1004.5~18.04.14.18.0-1005.6~18.04.14.18.0-1006.7~18.04.14.18.0-1007.8~18.04.14.18.0-1008.9~18.04.1
Show 7 moreShow less
4.18.0-1009.10~18.04.14.18.0-1011.12~18.04.14.18.0-1012.13~18.04.14.18.0-1013.14~18.04.14.18.0-1015.16~18.04.15.0.0-1011.11~18.04.15.0.0-1013.13~18.04.1
None known
linux-hwe-edge
Ubuntu:18.04:LTS
All versions, plus listed versions
5.0.0-15.16~18.04.15.0.0-16.17~18.04.15.0.0-17.18~18.04.15.0.0-19.20~18.04.15.0.0-20.21~18.04.1
Show 5 moreShow less
5.3.0-19.20~18.04.25.3.0-22.24~18.04.15.3.0-23.25~18.04.15.3.0-23.25~18.04.25.3.0-24.26~18.04.2
None known
linux-oracle-5.0
Ubuntu:18.04:LTS
All versions, plus listed versions
5.0.0-1007.12~18.04.15.0.0-1008.13~18.04.15.0.0-1009.14~18.04.15.0.0-1010.15~18.04.15.0.0-1011.165.0.0-1013.185.0.0-1014.19
None known
linux-oracle-5.3
Ubuntu:18.04:LTS
All versions, plus listed versions
5.3.0-1011.12~18.04.15.3.0-1013.14~18.04.15.3.0-1014.15~18.04.15.3.0-1016.18~18.04.15.3.0-1018.20~18.04.1
Show 4 moreShow less
5.3.0-1024.26~18.04.15.3.0-1027.29~18.04.15.3.0-1028.30~18.04.15.3.0-1030.32~18.04.1
None known
linux-raspi2
Ubuntu:20.04:LTS
All versions, plus listed versions
5.3.0-1007.85.3.0-1014.165.3.0-1015.175.3.0-1017.195.4.0-1004.45.4.0-1006.6
None known

History

History
RecordedChangedSources
affectedOSV
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2020-25221 is a high vulnerability (CVSS 7.8) in Linux Kernel, published September 10, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.67%, the 52nd percentile. Fixed in linux 5.8.7-1.

References

Show 20 moreShow less
This page doesn't list everything

Left out here: 415 versions and the rest of 1 source description. The JSON record has them.

MoveEnter Open