{"id":"CVE-2026-46070","state":"PUBLISHED","title":"md/raid5: validate payload size before accessing journal metadata","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nmd/raid5: validate payload size before accessing journal metadata\n\nr5c_recovery_analyze_meta_block() and\nr5l_recovery_verify_data_checksum_for_mb() iterate over payloads in a\njournal metadata block using on-disk payload size fields without\nvalidating them against the remaining space in the metadata block.\n\nA corrupted journal contains payload sizes extending beyond the PAGE_SIZE\nboundary can cause out-of-bounds reads when accessing payload fields or\ncomputing offsets.\n\nAdd bounds validation for each payload type to ensure the full payload\nfits within meta_size before processing.","publishedAt":"2026-05-27T12:57:54.345Z","updatedAt":"2026-10-19T19:26:42.780Z","severity":{"score":7.1,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"c96c6f01d84b5c67db1bf1cc8591c0b7146826fc","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"ef4851d8324fd978ca1ff9ec76a275438f887743","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"28d3ff7109c66e99dc1b7cddacb5c760849620ef","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"33698bd1b2db9764a29df7751533d33967ff5c98","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"c3a1cf78bd1bbb51b2cc5189b4743056553c1e0e","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"73ce72edd113374801045924d4417199963f73a3","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"406aa86394ead347c47428fb51b6359bdaa2257d","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"b0cc3ae97e893bf54bbce447f4e9fd2e0b88bff9","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/md/raid5-cache.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.10","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.10","versionType":"semver"},{"version":"5.10.258","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.209","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.175","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.140","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.86","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.27","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.0.4","status":"unaffected","lessThanOrEqual":"7.0.*","versionType":"semver"},{"version":"7.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/md/raid5-cache.c"]}],"references":["https://git.kernel.org/stable/c/c96c6f01d84b5c67db1bf1cc8591c0b7146826fc","https://git.kernel.org/stable/c/ef4851d8324fd978ca1ff9ec76a275438f887743","https://git.kernel.org/stable/c/28d3ff7109c66e99dc1b7cddacb5c760849620ef","https://git.kernel.org/stable/c/33698bd1b2db9764a29df7751533d33967ff5c98","https://git.kernel.org/stable/c/c3a1cf78bd1bbb51b2cc5189b4743056553c1e0e","https://git.kernel.org/stable/c/73ce72edd113374801045924d4417199963f73a3","https://git.kernel.org/stable/c/406aa86394ead347c47428fb51b6359bdaa2257d","https://git.kernel.org/stable/c/b0cc3ae97e893bf54bbce447f4e9fd2e0b88bff9","https://cert-portal.siemens.com/productcert/html/ssa-784472.html"],"weaknesses":["CWE-125"],"ingestedAt":"2026-10-29T20:12:07.131Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/46xxx/CVE-2026-46070.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-46070","state":"PUBLISHED","datePublished":"2026-05-27T12:57:54.345Z","dateUpdated":"2026-10-19T19:26:42.780Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-05-13T15:03:33.095Z"},"containers":{"cna":{"title":"md/raid5: validate payload size before accessing journal metadata","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nmd/raid5: validate payload size before accessing journal metadata\n\nr5c_recovery_analyze_meta_block() and\nr5l_recovery_verify_data_checksum_for_mb() iterate over payloads in a\njournal metadata block using on-disk payload size fields without\nvalidating them against the remaining space in the metadata block.\n\nA corrupted journal contains payload sizes extending beyond the PAGE_SIZE\nboundary can cause out-of-bounds reads when accessing payload fields or\ncomputing offsets.\n\nAdd bounds validation for each payload type to ensure the full payload\nfits within meta_size before processing."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"c96c6f01d84b5c67db1bf1cc8591c0b7146826fc","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"ef4851d8324fd978ca1ff9ec76a275438f887743","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"28d3ff7109c66e99dc1b7cddacb5c760849620ef","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"33698bd1b2db9764a29df7751533d33967ff5c98","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"c3a1cf78bd1bbb51b2cc5189b4743056553c1e0e","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"73ce72edd113374801045924d4417199963f73a3","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"406aa86394ead347c47428fb51b6359bdaa2257d","versionType":"git"},{"version":"b4c625c67362b3940f619c1a836b4e8329106658","status":"affected","lessThan":"b0cc3ae97e893bf54bbce447f4e9fd2e0b88bff9","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/md/raid5-cache.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"4.10","status":"affected"},{"version":"0","status":"unaffected","lessThan":"4.10","versionType":"semver"},{"version":"5.10.258","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.209","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.175","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.140","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.86","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.27","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.0.4","status":"unaffected","lessThanOrEqual":"7.0.*","versionType":"semver"},{"version":"7.1","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/md/raid5-cache.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/c96c6f01d84b5c67db1bf1cc8591c0b7146826fc"},{"url":"https://git.kernel.org/stable/c/ef4851d8324fd978ca1ff9ec76a275438f887743"},{"url":"https://git.kernel.org/stable/c/28d3ff7109c66e99dc1b7cddacb5c760849620ef"},{"url":"https://git.kernel.org/stable/c/33698bd1b2db9764a29df7751533d33967ff5c98"},{"url":"https://git.kernel.org/stable/c/c3a1cf78bd1bbb51b2cc5189b4743056553c1e0e"},{"url":"https://git.kernel.org/stable/c/73ce72edd113374801045924d4417199963f73a3"},{"url":"https://git.kernel.org/stable/c/406aa86394ead347c47428fb51b6359bdaa2257d"},{"url":"https://git.kernel.org/stable/c/b0cc3ae97e893bf54bbce447f4e9fd2e0b88bff9"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H","baseScore":7.1,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The malicious input is the on-disk journal metadata processed during local MD array assembly/start; it is not a network-facing service. Even when the journal sits on remote storage, the vulnerable recovery code runs locally against a block device, so the vector is Local.\nAC:L - A crafted journal block deterministically triggers the OOB read on every assembly; the required CRC is fully attacker-computable from the publicly-stored array UUID, and there is no race or uncontrolled condition.\nPR:L - Exploitation only requires planting crafted bytes on the journal block device (e.g. disk-group/device write access), after which routine or boot-time auto-assembly processes it; this is a low-privilege primitive rather than full init-namespace root.\nUI:N - Array assembly/journal recovery runs automatically at boot or device hot-plug, so no human interaction is needed once the corrupted journal is in place.\nS:U - The OOB read stays within the kernel's own memory and security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - The flaw is a large, unbounded out-of-bounds read of adjacent kernel memory (FLUSH count up to ~500M entries), which per scoring guidance for unbounded OOB reads is treated as a high confidentiality impact.\nI:N - The fix adds only read-bounds validation; the vulnerability provides no out-of-bounds write or corruption primitive against system data, so there is no integrity impact.\nA:H - OOB access to unmapped memory (or the int overflow / BUG_ON in the read path) causes a kernel oops/panic, crashing the host during array assembly."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T12:29:28.864Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"5.10.258"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"5.15.209"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"6.1.175"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"6.6.140"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"6.12.86"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"6.18.27"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"7.0.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.10","versionEndExcluding":"7.1"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"affected":[{"vendor":"Siemens","product":"SIMATIC S7-1500 TM MFP - GNU/Linux subsystem","defaultStatus":"unknown","versions":[{"version":"0","status":"affected","lessThan":"*","versionType":"custom"}]}],"references":[{"url":"https://cert-portal.siemens.com/productcert/html/ssa-784472.html"}],"providerMetadata":{"shortName":"siemens-SADP","orgId":"0b142b55-0307-4c5a-b3c9-f314f3fb7c5e","dateUpdated":"2026-10-15T01:20:21.951Z"},"x_adpType":"supplier"},{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-46070","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2026-10-16T15:19:24.995306Z"}}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-125","lang":"en","type":"CWE","description":"CWE-125 Out-of-bounds Read"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-19T19:26:42.780Z"}}]}}}