CVE-2026-98726
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: nvme-multipath: fix underflow in ANA log bounds checks The number of ANA groups advertised through Identify Controller sizes the ANA log buffer. The ANA log header and group descriptors independently supply the number of groups and namespace IDs to parse. Both bounds checks subtract an untrusted object size from ana_log_size before comparing the current offset. If the object is larger than the buffer, the size_t subtraction underflows and lets the parser read beyond ana_log_buf. Check the current offset before the first subtraction and compare each object size with the remaining buffer instead. This rejects inconsistent ANA data before dereferencing a truncated group descriptor or walking an oversized namespace ID array.
View original CVE JSON
{
"id": "CVE-2026-98726",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2026-10-18T16:17:26.237",
"lastModified": "2026-10-30T13:21:21.580",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnvme-multipath: fix underflow in ANA log bounds checks\n\nThe number of ANA groups advertised through Identify Controller sizes the\nANA log buffer. The ANA log header and group descriptors independently\nsupply the number of groups and namespace IDs to parse.\n\nBoth bounds checks subtract an untrusted object size from ana_log_size\nbefore comparing the current offset. If the object is larger than the\nbuffer, the size_t subtraction underflows and lets the parser read beyond\nana_log_buf.\n\nCheck the current offset before the first subtraction and compare each\nobject size with the remaining buffer instead. This rejects inconsistent\nANA data before dereferencing a truncated group descriptor or walking an\noversized namespace ID array."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"drivers/nvme/host/multipath.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "52c4294f3c26ec9db0e6f2e599096673d6f0f34d",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "fe6e003c132b7c204f63e7a7ec422904fa3141b6",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "08ab1e2dddf26248d5e6246046096b281cf5a319",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "3045128294d347fd38542ad6e174b1b34d9c0751",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "03a0c21f0fd7a872953aae5714303d8f38d1e567",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "49e8a3224c91fd5fbf22f4adcca6c8209cfdd6fe",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "e5cdb0c0a51e8ff49914ae16ef5360010c40cc85",
"versionType": "git",
"status": "affected"
},
{
"version": "0d0b660f214dc4905db7b6bc998bad0c16dfb1ba",
"lessThan": "63fa2d9c9c37020bd2703fe2a6a38027b5abeb15",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"drivers/nvme/host/multipath.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "4.19",
"status": "affected"
},
{
"version": "0",
"lessThan": "4.19",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.10.273",
"lessThanOrEqual": "5.10.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.15.224",
"lessThanOrEqual": "5.15.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.191",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.160",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.113",
"lessThanOrEqual": "6.12.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18.56",
"lessThanOrEqual": "6.18.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.2.10",
"lessThanOrEqual": "7.2.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.3",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {},
"references": [
{
"url": "https://git.kernel.org/stable/c/03a0c21f0fd7a872953aae5714303d8f38d1e567",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/08ab1e2dddf26248d5e6246046096b281cf5a319",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/3045128294d347fd38542ad6e174b1b34d9c0751",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/49e8a3224c91fd5fbf22f4adcca6c8209cfdd6fe",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/52c4294f3c26ec9db0e6f2e599096673d6f0f34d",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/63fa2d9c9c37020bd2703fe2a6a38027b5abeb15",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/e5cdb0c0a51e8ff49914ae16ef5360010c40cc85",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/fe6e003c132b7c204f63e7a7ec422904fa3141b6",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}