{"id":"CVE-2024-45818","aliases":["ALPINE-CVE-2024-45818","DEBIAN-CVE-2024-45818","DSA-5836-1","EUVD-2024-41272","GHSA-9ppw-wh7x-2qc9","MGASA-2025-0270","SUSE-SU-2024:3977-1","SUSE-SU-2024:3979-1","SUSE-SU-2024:3980-1","SUSE-SU-2024:4073-1","SUSE-SU-2024:4116-1","SUSE-SU-2024:4163-1","UBUNTU-CVE-2024-45818","openSUSE-SU-2024:14530-1"],"status":"published","title":"Deadlock in x86 HVM standard VGA handling","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","severity":{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium","assessor":"adp","from":"cve"},"epss":{"day":"2026-11-09","score":0.0027,"percentile":0.19302,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-667"],"published":"2024-11-12T12:19:02Z","modified":"2026-11-02T12:03:01Z","fixes":[{"ecosystem":"Alpine:v3.17","package":"xen","fixed_in":["4.16.6-r3"],"sources":["osv"]},{"ecosystem":"Alpine:v3.18","package":"xen","fixed_in":["4.17.5-r2"],"sources":["osv"]},{"ecosystem":"Alpine:v3.19","package":"xen","fixed_in":["4.18.3-r2"],"sources":["osv"]},{"ecosystem":"Alpine:v3.20","package":"xen","fixed_in":["4.18.3-r2"],"sources":["osv"]},{"ecosystem":"Alpine:v3.21","package":"xen","fixed_in":["4.19.0-r1"],"sources":["osv"]},{"ecosystem":"Alpine:v3.22","package":"xen","fixed_in":["4.19.0-r1"],"sources":["osv"]},{"ecosystem":"Alpine:v3.23","package":"xen","fixed_in":["4.19.0-r1"],"sources":["osv"]},{"ecosystem":"Alpine:v3.24","package":"xen","fixed_in":["4.19.0-r1"],"sources":["osv"]},{"ecosystem":"Debian:12","package":"xen","fixed_in":["4.17.5+23-ga4e5191dc0-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"xen","fixed_in":["4.19.1-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"xen","fixed_in":["4.19.1-1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Alpine:v3.17","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.16.6-r3"}]}]},{"source":"osv","ecosystem":"Alpine:v3.18","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.17.5-r2"}]}]},{"source":"osv","ecosystem":"Alpine:v3.19","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.18.3-r2"}]}]},{"source":"osv","ecosystem":"Alpine:v3.20","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.18.3-r2"}]}]},{"source":"osv","ecosystem":"Alpine:v3.21","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.19.0-r1"}]}]},{"source":"osv","ecosystem":"Alpine:v3.22","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.19.0-r1"}]}]},{"source":"osv","ecosystem":"Alpine:v3.23","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.19.0-r1"}]}]},{"source":"osv","ecosystem":"Alpine:v3.24","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.6.0"},{"fixed":"4.19.0-r1"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5+23-ga4e5191dc0-1"}]}],"versions":["4.17.1+2-gb773c48e36-1","4.17.2+55-g0b56bed864-1","4.17.2+76-ge1f9cb16e2-1","4.17.2+76-ge1f9cb16e2-1~deb12u1","4.17.2-1","4.17.3+10-g091466ba55-1","4.17.3+10-g091466ba55-1.1","4.17.3+10-g091466ba55-1.1~exp1","4.17.3+10-g091466ba55-1.1~exp2","4.17.3+10-g091466ba55-1~deb12u1","4.17.3+36-g54dacb5c02-1"]},{"source":"osv","ecosystem":"Debian:13","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.19.1-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.19.1-1"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5+23-ga4e5191dc0-1"}]}],"versions":["4.17.1+2-gb773c48e36-1","4.17.2+55-g0b56bed864-1","4.17.2+76-ge1f9cb16e2-1","4.17.2+76-ge1f9cb16e2-1~deb12u1","4.17.2-1","4.17.3+10-g091466ba55-1","4.17.3+10-g091466ba55-1.1","4.17.3+10-g091466ba55-1.1~exp1","4.17.3+10-g091466ba55-1.1~exp2","4.17.3+10-g091466ba55-1~deb12u1","4.17.3+36-g54dacb5c02-1"],"bundled":12},{"source":"osv","ecosystem":"Mageia:9","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5-1.git20251028.1.mga9"}]}],"bundled":26},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.14.6_22-150300.3.84.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP3-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.14.6_22-150300.3.84.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP3","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.14.6_22-150300.3.84.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.1","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.14.6_22-150300.3.84.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.2","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.14.6_22-150300.3.84.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Enterprise Storage 7.1","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.14.6_22-150300.3.84.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 12 SP5-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.12.4_58-3.124.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.12.4_58-3.124.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.5","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5_06-150500.3.42.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Basesystem 15 SP5","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5_06-150500.3.42.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Server Applications 15 SP5","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5_06-150500.3.42.1"}]}],"bundled":3},{"source":"osv","ecosystem":"openSUSE:Leap Micro 5.5","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5_06-150500.3.42.1"}]}],"bundled":3},{"source":"osv","ecosystem":"openSUSE:Leap 15.5","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.17.5_06-150500.3.42.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.13.5_16-150200.3.99.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP2-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.13.5_16-150200.3.99.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP2","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.13.5_16-150200.3.99.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.3","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Micro 5.4","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server 15 SP4-LTSS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Server for SAP Applications 15 SP4","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Manager Proxy 4.3","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Manager Server 4.3","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.16.6_06-150400.4.65.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Basesystem 15 SP6","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.18.3_06-150600.3.12.1"}]}],"bundled":3},{"source":"osv","ecosystem":"SUSE:Linux Enterprise Module for Server Applications 15 SP6","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.18.3_06-150600.3.12.1"}]}],"bundled":3},{"source":"osv","ecosystem":"openSUSE:Leap 15.6","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.18.3_06-150600.3.12.1"}]}],"bundled":3},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.5.1-0ubuntu1","4.5.1-0ubuntu2","4.6.0-1ubuntu1","4.6.0-1ubuntu2","4.6.0-1ubuntu4","4.6.0-1ubuntu4.1","4.6.0-1ubuntu4.2","4.6.0-1ubuntu4.3","4.6.5-0ubuntu1","4.6.5-0ubuntu1.1","4.6.5-0ubuntu1.2","4.6.5-0ubuntu1.4"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.9.0-0ubuntu3","4.9.0-0ubuntu4","4.9.2-0ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.9.2-0ubuntu2","4.9.2-0ubuntu6","4.9.2-0ubuntu7","4.11.3+24-g14b62ab3e5-1ubuntu1","4.11.3+24-g14b62ab3e5-1ubuntu2","4.11.3+24-g14b62ab3e5-1ubuntu2.2","4.11.3+24-g14b62ab3e5-1ubuntu2.3"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.11.4+24-gddaaccbbab-1ubuntu2","4.16.0-1~ubuntu2","4.16.0-1~ubuntu2.1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.17.2-1","4.17.2+55-g0b56bed864-1","4.17.2+76-ge1f9cb16e2-1","4.17.2+76-ge1f9cb16e2-1ubuntu1","4.17.3+10-g091466ba55-1","4.17.3+10-g091466ba55-1.1ubuntu2","4.17.3+10-g091466ba55-1.1ubuntu3"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.20.0-1ubuntu1","4.20.0+68-g35cb38b222-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.20.2+7-g1badcf5035-2build2","4.20.2+37-g61ff35323e-1ubuntu1","4.20.3+127-gc42374a105-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["4.20.0+68-g35cb38b222-1","4.20.2+7-g1badcf5035-2","4.20.2+7-g1badcf5035-2build2"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"xen","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.19.0_06-1.1"}]}],"bundled":2}],"products":[{"vendor":"xen","product":"xen"}],"references":[{"url":"https://xenbits.xenproject.org/xsa/advisory-463.html","tags":["Patch","Vendor Advisory","fix"]},{"url":"http://www.openwall.com/lists/oss-security/2024/11/12/2","tags":["Patch","Third Party Advisory","fix"]},{"url":"http://xenbits.xen.org/xsa/advisory-463.html","tags":["Patch","Vendor Advisory","fix"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2024-45818"},{"url":"https://github.com/advisories/GHSA-9ppw-wh7x-2qc9"},{"url":"https://security.alpinelinux.org/vuln/CVE-2024-45818","tags":["advisory"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2024-45818","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2025-0270.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=33401","tags":["report"]},{"url":"https://www.openwall.com/lists/oss-security/2024/07/16/3","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/07/16/4","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/08/14/2","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/08/14/3","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/09/24/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/11/12/2","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/11/12/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/12/17/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2024/12/17/2","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/02/27/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/05/12/4","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/05/12/5","tags":["web"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/message/KEACKX57LEHS2YKZ4PO5DYNOQRGQSDO2/","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/05/27/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/07/01/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/07/08/2","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/08/28/2","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/09/09/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/09/09/2","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/09/09/3","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/10/21/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/10/24/1","tags":["web"]},{"url":"https://www.openwall.com/lists/oss-security/2025/11/05/4","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20243977-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1232542","tags":["report"]},{"url":"https://bugzilla.suse.com/1232622","tags":["report"]},{"url":"https://bugzilla.suse.com/1232624","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2024-45818","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2024-45819","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20243979-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1231046","tags":["report"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20243980-1/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1027519","tags":["report"]},{"url":"https://bugzilla.suse.com/1230366","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2024-45817","tags":["web"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20244073-1/","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20244116-1/","tags":["advisory"]},{"url":"https://www.suse.com/support/update/announcement/2024/suse-su-20244163-1/","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2024-45818","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2024-45818","tags":["report"]},{"url":"https://xenbits.xen.org/xsa/advisory-463.html","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/BEWRLARXOTVNP23NN77IW3VFLNMEXBMM/","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2024-45818","title":"Deadlock in x86 HVM standard VGA handling","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:00:41.413Z","modified":"2024-12-31T19:01:43.51Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium","assessor":"adp"}],"cwes":["CWE-667"],"updated_at":"2026-11-02T14:34:08.16279Z"}],"euvd":[{"id":"EUVD-2024-41272","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:00:41Z","modified":"2024-12-31T19:01:43Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-03T00:04:31.712293Z"}],"ghsa":[{"id":"GHSA-9ppw-wh7x-2qc9","title":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual)...","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:32:40Z","modified":"2024-12-31T21:31:52Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"cwes":["CWE-667"],"updated_at":"2026-11-02T14:59:18.102288Z"}],"nvd":[{"id":"CVE-2024-45818","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:15:16.54Z","modified":"2026-06-17T07:54:52.443Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-667"],"updated_at":"2026-11-02T14:10:40.507978Z"}],"osv":[{"id":"ALPINE-CVE-2024-45818","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:15:16.54Z","modified":"2026-11-02T11:17:50.113245112Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:27:49.709457Z"},{"id":"CVE-2024-45818","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM\nguests, when the (virtual) VGA is in \"standard\" mode.  Locking involved\nthere has an unusual discipline, leaving a lock acquired past the\nreturn from the function that acquired it.  This behavior results in a\nproblem when emulating an instruction with two memory accesses, both of\nwhich touch VGA memory (plus some further constraints which aren't\nrelevant here).  When emulating the 2nd access, the lock that is already\nbeing held would be attempted to be re-acquired, resulting in a\ndeadlock.\n\nThis deadlock was already found when the code was first introduced, but\nwas analysed incorrectly and the fix was incomplete.  Analysis in light\nof the new finding cannot find a way to make the existing locking\ndiscipline work.\n\nIn staging, this logic has all been removed because it was discovered\nto be accidentally disabled since Xen 4.7.  Therefore, we are fixing the\nlocking problem by backporting the removal of most of the feature.  Note\nthat even with the feature disabled, the lock would still be acquired\nfor any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:15:16.54Z","modified":"2026-04-16T04:30:39.826121371Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:44:42.790566Z"},{"id":"DEBIAN-CVE-2024-45818","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM guests, when the (virtual) VGA is in \"standard\" mode.  Locking involved there has an unusual discipline, leaving a lock acquired past the return from the function that acquired it.  This behavior results in a problem when emulating an instruction with two memory accesses, both of which touch VGA memory (plus some further constraints which aren't relevant here).  When emulating the 2nd access, the lock that is already being held would be attempted to be re-acquired, resulting in a deadlock.  This deadlock was already found when the code was first introduced, but was analysed incorrectly and the fix was incomplete.  Analysis in light of the new finding cannot find a way to make the existing locking discipline work.  In staging, this logic has all been removed because it was discovered to be accidentally disabled since Xen 4.7.  Therefore, we are fixing the locking problem by backporting the removal of most of the feature.  Note that even with the feature disabled, the lock would still be acquired for any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:15:16.54Z","modified":"2026-11-02T12:03:01.312220604Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:43.473331Z"},{"id":"UBUNTU-CVE-2024-45818","description":"The hypervisor contains code to accelerate VGA memory accesses for HVM guests, when the (virtual) VGA is in \"standard\" mode.  Locking involved there has an unusual discipline, leaving a lock acquired past the return from the function that acquired it.  This behavior results in a problem when emulating an instruction with two memory accesses, both of which touch VGA memory (plus some further constraints which aren't relevant here).  When emulating the 2nd access, the lock that is already being held would be attempted to be re-acquired, resulting in a deadlock. This deadlock was already found when the code was first introduced, but was analysed incorrectly and the fix was incomplete.  Analysis in light of the new finding cannot find a way to make the existing locking discipline work. In staging, this logic has all been removed because it was discovered to be accidentally disabled since Xen 4.7.  Therefore, we are fixing the locking problem by backporting the removal of most of the feature.  Note that even with the feature disabled, the lock would still be acquired for any accesses to the VGA MMIO region.","status":"published","published":"2024-12-19T12:15:00Z","modified":"2026-10-17T12:57:24.311997282Z","cvss":[{"version":"3.1","score":6.5,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N","level":"medium"}],"updated_at":"2026-11-02T16:55:02.636559Z"},{"id":"DSA-5836-1","title":"xen - security update","status":"published","published":"2024-12-26T00:00:00Z","modified":"2026-03-09T02:09:38.185872Z","updated_at":"2026-11-02T15:46:17.892347Z"},{"id":"MGASA-2025-0270","title":"Updated xen packages fix security vulnerabilities","description":"Double unlock in x86 guest IRQ handling. (CVE-2024-31143)\nXapi: Metadata injection attack against backup/restore functionality.\n(CVE-2024-31144)\nError handling in x86 IOMMU identity mapping. (CVE-2024-31145)\nPCI device pass-through with shared resources. (CVE-2024-31146)\nx86: Deadlock in vlapic_error(). (CVE-2024-45817)\nDeadlock in x86 HVM standard VGA handling. (CVE-2024-45818)\nlibxl leaks data to PVH guests via ACPI tables. (CVE-2024-45819)\nBackend can crash Linux netfront. (CVE-2024-53240)\nXen hypercall page unsafe against speculative attacks. (CVE-2024-53241)\nDeadlock potential with VT-d and legacy PCI device pass-through.\n(CVE-2025-1713)\nx86: Indirect Target Selection. (CVE-2024-28956)\nx86: Incorrect stubs exception handling for flags recovery.\n(CVE-2025-27465)\nTSA-SQ (TSA in the Store Queues). (CVE-2024-36350)\nTSA-L1 (TSA in the L1 data cache). (CVE-2024-36357)\nA NULL pointer dereference in the updating of the reference TSC area.\n(CVE-2025-27466)\nA NULL pointer dereference by assuming the SIM page is mapped when a\nsynthetic timer message has to be delivered. (CVE-2025-58142)\nA race in the mapping of the reference TSC page, where a guest can get\nXen to free a page while still present in the guest physical to machine\n(p2m) page tables. (CVE-2025-58143)\nAn assertion is wrong there, where the case actually needs handling.  A\nNULL pointer de-reference could result on a release build.\n(CVE-2025-58144)\nThe P2M lock isn't held until a page reference was actually obtained (or\nthe attempt to do so has failed).  Otherwise the page can not only\nchange type, but even ownership in between, thus allowing domain\nboundaries to be violated. (CVE-2025-58145)\nXAPI UTF-8 string handling. (CVE-2025-58146)\nHypercalls using the HV_VP_SET Sparse format can cause vpmask_set() to\nwrite out of bounds when converting the bitmap to Xen's format.\n(CVE-2025-58147)\nHypercalls using any input format can cause send_ipi() to read d-\u003evcpu[]\nout-of-bounds, and operate on a wild vCPU pointer.(CVE-2025-58148)\nIncorrect removal of permissions on PCI device unplug. (CVE-2025-58149)\n","status":"published","published":"2025-11-09T07:52:10Z","modified":"2026-04-16T04:42:58.080548709Z","updated_at":"2026-11-02T15:49:43.178336Z"},{"id":"openSUSE-SU-2024:14530-1","title":"xen-4.19.0_06-1.1 on GA media","description":"These are all security issues fixed in the xen-4.19.0_06-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-11-26T00:00:00Z","modified":"2026-02-04T04:05:27.343415Z","updated_at":"2026-11-02T16:58:36.976155Z"},{"id":"SUSE-SU-2024:3977-1","title":"Security update for xen","description":"This update for xen fixes the following issues:\n\n- CVE-2024-45818: Fixed deadlock in x86 HVM standard VGA handling (XSA-463) (bsc#1232622).\n- CVE-2024-45819: Fixed libxl data leaks to PVH guests via ACPI tables (XSA-464) (bsc#1232624).\n\nBug fixes:\n\n- Remove usage of net-tools-deprecated from supportconfig plugin (bsc#1232542).\n","status":"published","published":"2024-11-12T12:19:02Z","modified":"2026-02-04T03:52:41.972552Z","updated_at":"2026-11-02T15:53:55.639015Z"},{"id":"SUSE-SU-2024:3979-1","title":"Security update for xen","description":"This update for xen fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2024-45818: xen: Deadlock in x86 HVM standard VGA handling (bsc#1232622)\n- CVE-2024-45819: xen: libxl leaks data to PVH guests via ACPI tables (bsc#1232624)\n\nNon-security issue fixed:\n\n- Xen host hung at boot up with repeated '(XEN) APIC error on CPU on CPU53: 40(40), Received illegal vector' (bsc#1231046)\n","status":"published","published":"2024-11-12T16:13:52Z","modified":"2026-02-04T03:57:25.709855Z","updated_at":"2026-11-02T15:53:55.639015Z"},{"id":"SUSE-SU-2024:3980-1","title":"Security update for xen","description":"This update for xen fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2024-45818: xen: Deadlock in x86 HVM standard VGA handling (bsc#1232622)\n- CVE-2024-45819: xen: libxl leaks data to PVH guests via ACPI tables (bsc#1232624)\n- CVE-2024-45817: xen: x86: Deadlock in vlapic_error() (bsc#1230366)\n\nNon-security issues fixed:\n\n- Removed usage of net-tools-deprecated from supportconfig plugin (bsc#1232542)\n- Upstream bug fixes (bsc#1027519)\n","status":"published","published":"2024-11-12T16:14:09Z","modified":"2026-02-04T04:03:00.128254Z","updated_at":"2026-11-02T15:53:55.639015Z"},{"id":"SUSE-SU-2024:4073-1","title":"Security update for xen","description":"This update for xen fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2024-45818: xen: Deadlock in x86 HVM standard VGA handling (bsc#1232622)\n- CVE-2024-45819: xen: libxl leaks data to PVH guests via ACPI tables (bsc#1232624)\n- CVE-2024-45817: xen: x86: Deadlock in vlapic_error() (bsc#1230366)\n\nNon-security issue fixed:\n\n- Removed usage of net-tools-deprecated from supportconfig plugin (bsc#1232542)\n","status":"published","published":"2024-11-27T07:34:47Z","modified":"2026-02-04T02:25:44.158667Z","updated_at":"2026-11-02T15:53:55.639015Z"},{"id":"SUSE-SU-2024:4116-1","title":"Security update for xen","description":"This update for xen fixes the following issues:\n\n- CVE-2024-45818: Fixed deadlock in x86 HVM standard VGA handling (XSA-463) (bsc#1232622).\n- CVE-2024-45819: Fixed libxl data leaks to PVH guests via ACPI tables (XSA-464) (bsc#1232624).\n\nBug fixes:\n\n- Remove usage of net-tools-deprecated from supportconfig plugin (bsc#1232542).\n","status":"published","published":"2024-11-29T16:06:17Z","modified":"2026-02-04T03:42:44.642839Z","updated_at":"2026-11-02T15:53:55.639015Z"},{"id":"SUSE-SU-2024:4163-1","title":"Security update for xen","description":"This update for xen fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2024-45818: xen: Deadlock in x86 HVM standard VGA handling (bsc#1232622)\n- CVE-2024-45819: xen: libxl leaks data to PVH guests via ACPI tables (bsc#1232624)\n- CVE-2024-45817: xen: x86: Deadlock in vlapic_error() (bsc#1230366)\n\nNon-security issues fixed:\n\n- Removed usage of net-tools-deprecated from supportconfig plugin (bsc#1232542)\n- Upstream bug fixes (bsc#1027519)\n","status":"published","published":"2024-12-04T07:57:13Z","modified":"2026-02-04T03:45:46.214762Z","updated_at":"2026-11-02T15:53:56.123059Z"}]}}
