CVE-2021-28703
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get...
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
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
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
CVE-2021-28703- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.9 Medium
AV:L/AC:M/Au:N/C:C/I:C/A:C - Updated
- 2026-11-02
CVE List No score
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
CVE-2021-28703- Updated
- 2026-11-02
EUVDEUVD-2021-15360 No score
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
EUVD-2021-15360- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-mj29-93c5-p3pr
7.0
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get...
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
GHSA-mj29-93c5-p3pr- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVALPINE-CVE-2021-28703
7.0
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
ALPINE-CVE-2021-28703- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSV
7.0
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
CVE-2021-28703- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2021-28703
7.0
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
DEBIAN-CVE-2021-28703- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2021-28703
7.0
grant table v2 status pages may remain accessible after de-allocation (take two) Guest get permitted access to certain Xen-owned pages of memory. The majority of such pages remain allocated / associated with a guest for its entire lifetime. Grant table v2 status pages, however, get de-allocated when a guest switched (back) from v2 to v1. The freeing of such pages requires that the hypervisor know where in the guest these pages were mapped. The hypervisor tracks only one use within guest space, but racing requests from the guest to insert mappings of these pages may result in any of them to become mapped in multiple locations. Upon switching back from v2 to v1, the guest would then retain access to a page that was freed and perhaps re-used for other purposes. This bug was fortuitously fixed by code cleanup in Xen 4.14, and backported to security-supported Xen branches as a prerequisite of the fix for XSA-378.
- Record
UBUNTU-CVE-2021-28703- CVSS 3.1
- 7.0 High
CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVSUSE-SU-2021:14848-1 No score
Security update for xen
This update for xen fixes the following issues:
- CVE-2021-0089: Fixed Speculative Code Store Bypass (XSA-375) (bsc#1186433).
- CVE-2021-20255: Fixed stack overflow via infinite recursion in eepro100 (bsc#1182654).
- CVE-2021-28690: Fixed x86 TSX Async Abort protections not restored after S3 (XSA-377) (bsc#1186434).
- CVE-2021-28692: Fixed inappropriate x86 IOMMU timeout detection / handling (XSA-373) (bsc#1186429).
- CVE-2021-28697: Fixed grant table v2 status pages may remain accessible after de-allocation (XSA-379) (bsc#1189376).
- CVE-2021-28698: Fixed long running loops in grant table handling. (XSA-380) (bsc#1189378).
- CVE-2021-28701: Fixed race condition in XENMAPSPACE_grant_table handling (XSA-384) (bsc#1189632).
- CVE-2021-28703: Fixed grant table v2 status pages may remain accessible after de-allocation (take two) (XSA-387) (bsc#1192555).
- CVE-2021-28705, CVE-2021-28709: Fixed issues with partially successful P2M updates on x86 (XSA-389) (bsc#1192559).
- CVE-2021-28706: Fixed guests may exceed their designated memory limit (XSA-385) (bsc#1192554).
- CVE-2021-3527: Fixed unbounded stack allocation in usbredir (bsc#1186013).
- CVE-2021-3592: Fixed invalid pointer initialization may lead to information disclosure in slirp (bootp) (bsc#1187369).
- CVE-2021-3594: Fixed invalid pointer initialization may lead to information disclosure in slirp (udp) (bsc#1187378).
- CVE-2021-3595: Fixed invalid pointer initialization may lead to information disclosure in slirp (tftp) (bsc#1187376).
- CVE-2021-3682: Fixed free call on invalid pointer in usbredir bufp_alloc (bsc#1189150).
- CVE-2021-3930: Fixed off-by-one error in mode_sense_page() in hw/scsi/scsi-disk.c (bsc#1192526).
- Record
SUSE-SU-2021:14848-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
xenAlpine:v3.11 |
before 4.13.4-r0 | 4.13.4-r0 |
xenAlpine:v3.12 |
before 4.13.4-r0 | 4.13.4-r0 |
xenAlpine:v3.13 |
before 4.14.5-r0 | 4.14.5-r0 |
xenAlpine:v3.14 |
before 4.15.2-r0 | 4.15.2-r0 |
xenAlpine:v3.15 |
before 4.15.2-r0 | 4.15.2-r0 |
xenAlpine:v3.16 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.17 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.18 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.19 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.20 |
before 4.15.1-r1 | 4.15.1-r1 |
Show 16 moreShow less
| Package | Affected | Fixed |
|---|---|---|
xenAlpine:v3.21 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.22 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.23 |
before 4.15.1-r1 | 4.15.1-r1 |
xenAlpine:v3.24 |
before 4.15.1-r1 | 4.15.1-r1 |
xenDebian:12 |
before 4.14.0+80-gd101b417b7-1 | 4.14.0+80-gd101b417b7-1 |
xenDebian:13 |
before 4.14.0+80-gd101b417b7-1 | 4.14.0+80-gd101b417b7-1 |
xenDebian:14 |
before 4.14.0+80-gd101b417b7-1 | 4.14.0+80-gd101b417b7-1 |
xenSUSE:Linux Enterprise Server 11 SP4-LTSS From an advisory covering 17 CVEs |
before 4.4.4_50-61.67.1 | 4.4.4_50-61.67.1 |
xenUbuntu:16.04:LTS |
All versions, plus listed versions 4.5.1-0ubuntu14.5.1-0ubuntu24.6.0-1ubuntu14.6.0-1ubuntu24.6.0-1ubuntu4 Show 7 moreShow less4.6.0-1ubuntu4.14.6.0-1ubuntu4.24.6.0-1ubuntu4.34.6.5-0ubuntu14.6.5-0ubuntu1.14.6.5-0ubuntu1.24.6.5-0ubuntu1.4 |
None known |
xenUbuntu:18.04:LTS |
All versions, plus listed versions 4.9.0-0ubuntu34.9.0-0ubuntu44.9.2-0ubuntu1 |
None known |
xenUbuntu:20.04:LTS |
All versions, plus listed versions 4.9.2-0ubuntu24.9.2-0ubuntu64.9.2-0ubuntu74.11.3+24-g14b62ab3e5-1ubuntu14.11.3+24-g14b62ab3e5-1ubuntu24.11.3+24-g14b62ab3e5-1ubuntu2.24.11.3+24-g14b62ab3e5-1ubuntu2.3 |
None known |
xenUbuntu:22.04:LTS |
All versions, plus listed versions 4.11.4+24-gddaaccbbab-1ubuntu24.16.0-1~ubuntu24.16.0-1~ubuntu2.1 |
None known |
xenUbuntu:24.04:LTS |
All versions, plus listed versions 4.17.2-14.17.2+55-g0b56bed864-14.17.2+76-ge1f9cb16e2-14.17.2+76-ge1f9cb16e2-1ubuntu14.17.3+10-g091466ba55-14.17.3+10-g091466ba55-1.1ubuntu24.17.3+10-g091466ba55-1.1ubuntu3 |
None known |
xenUbuntu:25.10 |
All versions, plus listed versions 4.20.0-1ubuntu14.20.0+68-g35cb38b222-1 |
None known |
xenUbuntu:26.10 |
All versions, plus listed versions 4.20.2+7-g1badcf5035-2build24.20.2+37-g61ff35323e-1ubuntu14.20.3+127-gc42374a105-1 |
None known |
xenUbuntu:26.04:LTS |
All versions, plus listed versions 4.20.0+68-g35cb38b222-14.20.2+7-g1badcf5035-24.20.2+7-g1badcf5035-2build2 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2021-28703 is a high vulnerability (CVSS 7.0) in Xen, published December 1, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.33%, the 26th percentile. Fixed in xen 4.13.4-r0.
References
xenbits.xenproject.org/xsa/advisory-387.txt
security.gentoo.org/glsa/202402-07
nvd.nist.gov/vuln/detail/CVE-2021-28703
github.com/advisories/GHSA-mj29-93c5-p3pr
security.alpinelinux.org/vuln/CVE-2021-28703
security-tracker.debian.org/tracker/CVE-2021-28703
Show 37 moreShow less
suse.com/support/update/announcement/2021/suse-su-202114848-1
bugzilla.suse.com/1182654
bugzilla.suse.com/1186013
bugzilla.suse.com/1186429
bugzilla.suse.com/1186433
bugzilla.suse.com/1186434
bugzilla.suse.com/1187369
bugzilla.suse.com/1187376
bugzilla.suse.com/1187378
bugzilla.suse.com/1189150
bugzilla.suse.com/1189376
bugzilla.suse.com/1189378
bugzilla.suse.com/1189632
bugzilla.suse.com/1192526
bugzilla.suse.com/1192554
bugzilla.suse.com/1192555
bugzilla.suse.com/1192559
suse.com/security/cve/CVE-2021-0089
suse.com/security/cve/CVE-2021-20255
suse.com/security/cve/CVE-2021-28690
suse.com/security/cve/CVE-2021-28692
suse.com/security/cve/CVE-2021-28697
suse.com/security/cve/CVE-2021-28698
suse.com/security/cve/CVE-2021-28701
suse.com/security/cve/CVE-2021-28703
suse.com/security/cve/CVE-2021-28705
suse.com/security/cve/CVE-2021-28706
suse.com/security/cve/CVE-2021-28709
suse.com/security/cve/CVE-2021-3527
suse.com/security/cve/CVE-2021-3592
suse.com/security/cve/CVE-2021-3594
suse.com/security/cve/CVE-2021-3595
suse.com/security/cve/CVE-2021-3682
suse.com/security/cve/CVE-2021-3930
ubuntu.com/security/CVE-2021-28703
xenbits.xen.org/xsa/advisory-387.html
cve.org/CVERecord?id=CVE-2021-28703