Files
vuln-cve/data/2026/68xxx/CVE-2026-68466.json
T

264 lines
14 KiB
JSON

{
"dataType": "CVE_RECORD",
"dataVersion": "5.2",
"cveMetadata": {
"cveId": "CVE-2026-68466",
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"state": "PUBLISHED",
"assignerShortName": "Linux",
"dateReserved": "2026-07-30T09:28:09.396Z",
"datePublished": "2026-08-15T05:51:25.212Z",
"dateUpdated": "2026-08-17T05:39:10.682Z"
},
"containers": {
"cna": {
"providerMetadata": {
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux",
"dateUpdated": "2026-08-17T05:39:10.682Z"
},
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmtd: rawnand: lpc32xx_slc: fail DMA transfer on completion timeout\n\nlpc32xx_xmit_dma() waits for the DMA completion callback but ignores\nwait_for_completion_timeout(). A timed out DMA transfer is therefore\nunmapped and reported as successful to the NAND read/write path.\n\nReturn -ETIMEDOUT when the completion wait expires. Terminate the DMA\nchannel before unmapping the scatterlist so the timed out transfer cannot\ncontinue to access the buffer after the error is returned."
}
],
"metrics": [
{
"cvssV3_1": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
"baseScore": 8.8,
"baseSeverity": "HIGH"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The lpc32xx SLC NAND driver is only exercised through local kernel storage entry points—read/write/ioctl on /dev/mtd* or mtdblock, VFS access to flash-backed mounts (UBIFS/JFFS2/squashfs), or in-kernel mtd_read/mtd_write callers—not via any network packet or remote protocol handler.\nAC:L - An attacker with flash access can repeatedly issue MTD or filesystem read/write operations to stress the NAND controller and DMA engine, hunting for completion timeouts; they control I/O timing and can retry without depending on rare victim-only state beyond issuing local storage traffic.\nPR:L - Unprivileged local users on typical LPC32xx embedded systems can reach the vulnerable DMA path by reading executables or files from flash-backed root filesystems or world-readable mtdblock nodes; root-only /dev/mtd access is not required for the read path through lpc32xx_nand_read_page_syndrome.\nUI:N - Exploitation requires only attacker-initiated storage I/O against the NAND-backed device or mounted filesystem; no victim interaction such as plugging media, approving dialogs, or opening attacker-supplied content is needed.\nS:C - On DMA timeout the driver unmaps the scatterlist while in-flight DMA may continue, allowing the NAND DMA engine to access physical pages reused for unrelated kernel objects—crossing the intended DMA buffer security boundary of the driver.\nC:H - Continued DEV_TO_MEM DMA after dma_unmap_sg can write into repurposed physical pages and leak their prior contents upward; falsely reporting success also returns incomplete or attacker-influenced NAND page data, and post-unmap DMA enables arbitrary kernel memory disclosure via controlled page reuse.\nI:H - In-flight DMA after dma_unmap_sg provides a DMA-after-free style write primitive that can corrupt adjacent kernel heap or stack objects, enabling control-flow hijacking and privilege escalation beyond the intended NAND transfer buffer.\nA:H - DMA-after-unmap corruption commonly provokes kernel oops, panic, or hang; falsely successful timed-out writes can also corrupt flash contents or filesystem metadata on industrial LPC32xx appliances, causing sustained denial of service or device bricking."
}
]
}
],
"affected": [
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/mtd/nand/raw/lpc32xx_slc.c"
],
"versions": [
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "307e4f4c1d4e1575b3495ecc6e41aa2adc40f491",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "c367af37ce7238c96c6071337149099467160746",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "623c4d8e740debb4af28981e3d4e209f9d0260a4",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "bd4a622786f92e1f183f7557ab89dd32891cef60",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "8f5c3ee53a5dc1a0f7cfd780485f2c8b5d17f91d",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "cf7258f57d18026b8f77c0e80ff1805e9caf7250",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "cb2031f8b226efbd13735c07b075e5f14ec11f6d",
"status": "affected",
"versionType": "git"
},
{
"version": "2944a44da09e46b6db2fd2c3334f242b09e05c43",
"lessThan": "17a8ce84964f243c8f89dc7353ac7e8d3137bc74",
"status": "affected",
"versionType": "git"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/mtd/nand/raw/lpc32xx_slc.c"
],
"versions": [
{
"version": "3.7",
"status": "affected"
},
{
"version": "0",
"lessThan": "3.7",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.10.261",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "5.15.212",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.1.178",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.6.145",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.12.97",
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "6.18.40",
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "7.1.5",
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"versionType": "semver"
},
{
"version": "7.2",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "5.10.261"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "5.15.212"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "6.1.178"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "6.6.145"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "6.12.97"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "6.18.40"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "7.1.5"
},
{
"vulnerable": true,
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "3.7",
"versionEndExcluding": "7.2"
}
]
}
]
}
],
"references": [
{
"url": "https://git.kernel.org/stable/c/307e4f4c1d4e1575b3495ecc6e41aa2adc40f491"
},
{
"url": "https://git.kernel.org/stable/c/c367af37ce7238c96c6071337149099467160746"
},
{
"url": "https://git.kernel.org/stable/c/623c4d8e740debb4af28981e3d4e209f9d0260a4"
},
{
"url": "https://git.kernel.org/stable/c/bd4a622786f92e1f183f7557ab89dd32891cef60"
},
{
"url": "https://git.kernel.org/stable/c/8f5c3ee53a5dc1a0f7cfd780485f2c8b5d17f91d"
},
{
"url": "https://git.kernel.org/stable/c/cf7258f57d18026b8f77c0e80ff1805e9caf7250"
},
{
"url": "https://git.kernel.org/stable/c/cb2031f8b226efbd13735c07b075e5f14ec11f6d"
},
{
"url": "https://git.kernel.org/stable/c/17a8ce84964f243c8f89dc7353ac7e8d3137bc74"
}
],
"title": "mtd: rawnand: lpc32xx_slc: fail DMA transfer on completion timeout",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
}
}