{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-7324","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2025-10-29T13:44:46.603Z","datePublished":"2025-10-29T13:46:14.184Z","dateUpdated":"2026-08-05T09:19:20.163Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T09:19:20.163Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses\n\nSanitize possible addl_desc_ptr out-of-bounds accesses in\nses_enclosure_data_process()."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H","baseScore":8.1,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:A - The malformed data is the SES page 10 payload returned by the enclosure target over the storage fabric (SAS expander/enclosure, FC, or iSCSI/SRP target), so a rogue or compromised device on the SAN segment reaches the parser without local access. This matches the CNA's treatment of fabric-supplied OOB reads such as CVE-2026-31464 and CVE-2026-63889; a malicious USB device asserting the EncServ INQUIRY bit is an additional, less severe path.\nAC:L - The attacker fully controls both the page 10 length field and its contents, so simply reporting a page length of 0 while advertising DEVICE/ARRAY_DEVICE elements in page 1 deterministically drives addl_desc_ptr past the end of the allocation. No race, timing, or uncontrolled memory-layout condition is involved.\nPR:N - ses_intf_add() runs automatically during SCSI LUN discovery/rescan and binds to any target that sets the EncServ bit in its own INQUIRY response, so no credentials or prior authorization on the host are required. The KASAN report in the companion fix was triggered by systemd-udevd during ordinary enumeration.\nUI:N - Enclosure probing is driven by the kernel's automatic device discovery on link-up/hotplug and on session re-establishment, not by any operator action. No mount, open, or configuration step by a victim is needed.\nS:U - The out-of-bounds read stays within the kernel's own slab memory and the resulting data is exposed through the kernel's enclosure sysfs interface. No VM, IOMMU, or sandbox boundary is crossed.\nC:H - Adjacent slab memory is read out of bounds and the bytes are retained in ecomp->slot and scomp->addr, with slot exported through the world-readable /sys/class/enclosure/*/*/slot attribute, giving a repeatable heap-adjacency oracle usable to disclose kernel heap contents and defeat layout randomization. Repeated re-probes let the attacker sample different heap neighbours.\nI:N - The defect is strictly a read overrun — ses_process_descriptor() only loads from the descriptor and writes to in-bounds fields, so there is no out-of-bounds write or control-flow primitive. Any wrong slot/address value reported is something a malicious enclosure could already report through well-formed data.\nA:H - The read can extend past the end of a page-sized page10 allocation into an adjacent frame, oopsing on configurations where that frame is unmapped (DEBUG_PAGEALLOC/KFENCE, memory holes), and trips a KASAN slab-out-of-bounds report that panics hosts running panic_on_warn. The attacker can force this on every discovery cycle."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/scsi/ses.c"],"versions":[{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"af5114d824f3511a69d68beff49ca9a7c32d44e0","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"a156a262c543fa5ff30bcb2fc6ad1a95cb4ab57a","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"8e454aba72805241239caf8ba9b8e5a6be772b96","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"2ecd344173a5663d523433819da0484cb268b186","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"384aa697d8f2a28b5e962f5292cdfd2e528b5df7","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"27067c672980b497cc34048b69b12820851ac6b9","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"b91ef85a32fdba45fcbad87dd526d73d3b6d857d","status":"affected","versionType":"git"},{"version":"9927c68864e9c39cc317b4f559309ba29e642168","lessThan":"db95d4df71cb55506425b6e4a5f8d68e3a765b63","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/scsi/ses.c"],"versions":[{"version":"2.6.25","status":"affected"},{"version":"0","lessThan":"2.6.25","status":"unaffected","versionType":"semver"},{"version":"4.14.308","lessThanOrEqual":"4.14.*","status":"unaffected","versionType":"semver"},{"version":"4.19.276","lessThanOrEqual":"4.19.*","status":"unaffected","versionType":"semver"},{"version":"5.4.235","lessThanOrEqual":"5.4.*","status":"unaffected","versionType":"semver"},{"version":"5.10.173","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.99","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.16","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.2.3","lessThanOrEqual":"6.2.*","status":"unaffected","versionType":"semver"},{"version":"6.3","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":"2.6.25","versionEndExcluding":"4.14.308"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"4.19.276"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"5.4.235"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"5.10.173"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"5.15.99"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"6.1.16"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"6.2.3"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.25","versionEndExcluding":"6.3"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/af5114d824f3511a69d68beff49ca9a7c32d44e0"},{"url":"https://git.kernel.org/stable/c/a156a262c543fa5ff30bcb2fc6ad1a95cb4ab57a"},{"url":"https://git.kernel.org/stable/c/8e454aba72805241239caf8ba9b8e5a6be772b96"},{"url":"https://git.kernel.org/stable/c/2ecd344173a5663d523433819da0484cb268b186"},{"url":"https://git.kernel.org/stable/c/384aa697d8f2a28b5e962f5292cdfd2e528b5df7"},{"url":"https://git.kernel.org/stable/c/27067c672980b497cc34048b69b12820851ac6b9"},{"url":"https://git.kernel.org/stable/c/b91ef85a32fdba45fcbad87dd526d73d3b6d857d"},{"url":"https://git.kernel.org/stable/c/db95d4df71cb55506425b6e4a5f8d68e3a765b63"}],"title":"scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses","x_generator":{"engine":"bippy-1.2.0"}}}}