KVM: TDX: Reject concurrent change to CPUID entry count
In the Linux kernel, the following vulnerability has been resolved: KVM: TDX: Reject concurrent change to CPUID entry count Reject KVM_TDX_INIT_VM if userspace changes cpuid.nent between the initial read and the subsequent copy of the initialization data. tdx_td_init() first reads user_data->cpuid.nent to size the flexible kvm_tdx_init_vm copy. The copied structure also contains cpuid.nent, and that field can differ from the value used to size the allocation if userspace modifies the input concurrently. setup_tdparams_cpuids() later passes init_vm->cpuid.nent to kvm_find_cpuid_entry2(), which uses it as the array bound for the copied entries. Require the copied count to match the value used to size the allocation so that CPUID parsing cannot access beyond the entries actually copied.
- Products
- Kernel
- Affected versions
- Not specified
- Fixed versions
- 7.1.5
- CVEs
- CVE-2026-72285
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 4 Nov 2026, 20:39 UTC · Revision 1
Source evidence
KVM: TDX: Reject concurrent change to CPUID entry count
core-osv · Original sourcePublished 15 Aug 2026, 05:55 UTC
In the Linux kernel, the following vulnerability has been resolved: KVM: TDX: Reject concurrent change to CPUID entry count Reject KVM_TDX_INIT_VM if userspace changes cpuid.nent between the initial read and the subsequent copy of the initialization data. tdx_td_init() first reads user_data->cpuid.nent to size the flexible kvm_tdx_init_vm copy. The copied structure also contains cpuid.nent, and that field can differ from the value used to size the allocation if userspace modifies the input concurrently. setup_tdparams_cpuids() later passes init_vm->cpuid.nent to kvm_find_cpuid_entry2(), which uses it as the array bound for the copied entries. Require the copied count to match the value used to size the allocation so that CPUID parsing cannot access beyond the entries actually copied.
osv:CVE-2026-72285
Kernel
Fixed versions: 7.1.5
Complete source record
{
"id": "8d584f1fd2b7d13bd155740925255a6b332f3abd906997e832f331c3a195e773",
"url": "https://osv.dev/vulnerability/CVE-2026-72285",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "KVM: TDX: Reject concurrent change to CPUID entry count",
"summary": "In the Linux kernel, the following vulnerability has been resolved: KVM: TDX: Reject concurrent change to CPUID entry count Reject KVM_TDX_INIT_VM if userspace changes cpuid.nent between the initial read and the subsequent copy of the initialization data. tdx_td_init() first reads user_data->cpuid.nent to size the flexible kvm_tdx_init_vm copy. The copied structure also contains cpuid.nent, and that field can differ from the value used to size the allocation if userspace modifies the input concurrently. setup_tdparams_cpuids() later passes init_vm->cpuid.nent to kvm_find_cpuid_entry2(), which uses it as the array bound for the copied entries. Require the copied count to match the value used to size the allocation so that CPUID parsing cannot access beyond the entries actually copied.",
"evidence": "osv:CVE-2026-72285",
"products": [
{
"name": {
"value": "Kernel",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "7.1.5",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "high",
"structured": {
"id": "CVE-2026-72285",
"aliases": [
"CVE-2026-72285"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"type": "GIT",
"events": [
{
"introduced": "0bd0a4a1428baaf4447e95f0832492d9e3d64961"
},
{
"fixed": "d6b5aba65e99531c97b146622a406c75653819d5"
},
{
"fixed": "cfbebb55e5127dc162e73fa8956000055a78606c"
}
]
}
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72285.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "6.19.0"
},
{
"fixed": "7.1.5"
}
]
}
],
"package": {
"name": "Kernel",
"ecosystem": "Linux"
},
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-72285.json"
}
}
],
"modified": "2026-10-28T02:30:39.085066164Z",
"provider": "osv",
"references": [
"https://git.kernel.org/stable/c/cfbebb55e5127dc162e73fa8956000055a78606c",
"https://git.kernel.org/stable/c/d6b5aba65e99531c97b146622a406c75653819d5",
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72285.json",
"https://nvd.nist.gov/vuln/detail/CVE-2026-72285",
"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
],
"provider_metadata": {
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72285.json"
}
},
"related_cves": [
{
"value": "CVE-2026-72285",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 506771,
"published_at": "2026-08-15T05:55:08.385+00:00"
}