{"id":"CVE-2023-46835","state":"PUBLISHED","title":"x86/AMD: mismatch in IOMMU quarantine page table levels","description":"The current setup of the quarantine page tables assumes that the\nquarantine domain (dom_io) has been initialized with an address width\nof DEFAULT_DOMAIN_ADDRESS_WIDTH (48) and hence 4 page table levels.\n\nHowever dom_io being a PV domain gets the AMD-Vi IOMMU page tables\nlevels based on the maximum (hot pluggable) RAM address, and hence on\nsystems with no RAM above the 512GB mark only 3 page-table levels are\nconfigured in the IOMMU.\n\nOn systems without RAM above the 512GB boundary\namd_iommu_quarantine_init() will setup page tables for the scratch\npage with 4 levels, while the IOMMU will be configured to use 3 levels\nonly, resulting in the last page table directory (PDE) effectively\nbecoming a page table entry (PTE), and hence a device in quarantine\nmode gaining write access to the page destined to be a PDE.\n\nDue to this page table level mismatch, the sink page the device gets\nread/write access to is no longer cleared between device assignment,\npossibly leading to data leaks.\n","publishedAt":"2024-01-05T16:34:49.531Z","updatedAt":"2025-11-04T19:25:41.611Z","severity":{"score":5.5,"label":"Medium","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","source":"CISA-ADP"},"assigner":"XEN","products":["Xen Xen"],"affected":[{"vendor":"Xen","product":"Xen","defaultStatus":"unknown","versions":[{"version":"consult Xen advisory XSA-445","status":"unknown"}]}],"references":["https://xenbits.xenproject.org/xsa/advisory-445.html","http://xenbits.xen.org/xsa/advisory-445.html"],"weaknesses":["CWE-787"],"ingestedAt":"2026-10-29T20:06:24.729Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2023/46xxx/CVE-2023-46835.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-46835","state":"PUBLISHED","datePublished":"2024-01-05T16:34:49.531Z","dateUpdated":"2025-11-04T19:25:41.611Z","assignerShortName":"XEN","assignerOrgId":"23aa2041-22e1-471f-9209-9b7396fa234f","dateReserved":"2023-10-27T07:55:35.331Z"},"containers":{"cna":{"title":"x86/AMD: mismatch in IOMMU quarantine page table levels","descriptions":[{"lang":"en","value":"The current setup of the quarantine page tables assumes that the\nquarantine domain (dom_io) has been initialized with an address width\nof DEFAULT_DOMAIN_ADDRESS_WIDTH (48) and hence 4 page table levels.\n\nHowever dom_io being a PV domain gets the AMD-Vi IOMMU page tables\nlevels based on the maximum (hot pluggable) RAM address, and hence on\nsystems with no RAM above the 512GB mark only 3 page-table levels are\nconfigured in the IOMMU.\n\nOn systems without RAM above the 512GB boundary\namd_iommu_quarantine_init() will setup page tables for the scratch\npage with 4 levels, while the IOMMU will be configured to use 3 levels\nonly, resulting in the last page table directory (PDE) effectively\nbecoming a page table entry (PTE), and hence a device in quarantine\nmode gaining write access to the page destined to be a PDE.\n\nDue to this page table level mismatch, the sink page the device gets\nread/write access to is no longer cleared between device assignment,\npossibly leading to data leaks.\n"}],"affected":[{"vendor":"Xen","product":"Xen","defaultStatus":"unknown","versions":[{"version":"consult Xen advisory XSA-445","status":"unknown"}]}],"references":[{"url":"https://xenbits.xenproject.org/xsa/advisory-445.html"}],"providerMetadata":{"shortName":"XEN","orgId":"23aa2041-22e1-471f-9209-9b7396fa234f","dateUpdated":"2024-01-05T16:34:49.531Z"},"datePublic":"2023-11-14T12:00:00.000Z","impacts":[{"descriptions":[{"lang":"en","value":"A device in quarantine mode can access data from previous quarantine\npage table usages, possibly leaking data used by previous domains that\nalso had the device assigned.\n"}]}],"configurations":[{"lang":"en","value":"All Xen versions supporting PCI passthrough are affected.\n\nOnly x86 AMD systems with IOMMU hardware are vulnerable.\n\nOnly x86 guests which have physical devices passed through to them can\nleverage the vulnerability.\n"}],"workarounds":[{"lang":"en","value":"Not passing through physical devices to guests will avoid the\nvulnerability.\n\nNot using quarantine scratch-page mode will avoid the vulnerability,\nbut could result in other issues.\n"}],"credits":[{"lang":"en","type":"finder","value":"This issue was discovered by Roger Pau Monné of XenServer.\n"}]},"adp":[{"title":"CVE Program Container","references":[{"url":"https://xenbits.xenproject.org/xsa/advisory-445.html","tags":["x_transferred"]},{"url":"http://xenbits.xen.org/xsa/advisory-445.html"}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2025-11-04T19:25:41.611Z"}},{"title":"CISA ADP Vulnrichment","metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":5.5,"attackVector":"LOCAL","baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","integrityImpact":"NONE","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"NONE","privilegesRequired":"LOW","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"timestamp":"2024-04-12T04:00:28.791183Z","id":"CVE-2023-46835","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-787","type":"CWE","lang":"en","description":"CWE-787 Out-of-bounds Write"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2025-06-17T16:11:08.422Z"}}]}}}