{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-80752","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-08-26T14:34:25.790Z","datePublished":"2026-09-03T08:26:31.962Z","dateUpdated":"2026-09-04T04:58:32.588Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-09-04T04:58:32.588Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nInput: psxpad-spi - set driver data before use\n\npsxpad_spi_suspend() retrieves the controller state with\nspi_get_drvdata(), but probe never stores it, so suspend dereferences a\nNULL pointer. Store it during probe."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":8.4,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The fault is reached only via the kernel system-sleep PM path (suspend/hibernate) calling dpm_suspend() -> psxpad_spi_suspend(); it is not triggered by network traffic, wireless frames, or SPI packet handling from a remote peer.\nAC:L - On embedded retro consoles/arcade cabinets with a probed psxpad-spi controller, every system suspend deterministically calls psxpad_spi_suspend() with NULL drvdata and faults in psxpad_set_motor_level(); no race, heap layout, or rare timing is required beyond CONFIG_JOYSTICK_PSXPAD_SPI hardware being present.\nPR:N - No Linux account is required on typical embedded/kiosk deployments: ACPI power-button sleep, lid-close policies, or automated idle suspend invoke the PM path without authenticated local userspace, and user namespaces cannot substitute for triggering host system sleep.\nUI:N - Exploitation requires only initiating or allowing a system suspend/hibernate cycle (power button, logind, or policy-driven sleep); no separate victim action such as opening a file, mounting a filesystem, or plugging in a controller at attack time is needed once the SPI pad is bound.\nS:U - The NULL dereference and resulting kernel oops/panic occur entirely within the same host kernel that owns the psxpad-spi driver; there is no VM escape, IOMMU/DMA boundary bypass, or cross-security-authority impact.\nC:H - psxpad_spi_suspend() passes a NULL pad into psxpad_set_motor_level(), which performs kernel stores through a NULL structure pointer; this memory-unsafe dereference class can disclose kernel memory during fault/Oops handling or on mappings where low addresses are reachable, not merely a silent crash.\nI:H - The suspend path attempts writes to pad->motor1level and pad->motor2level via a NULL base pointer, constituting attempted kernel memory corruption that can yield further write primitives or control-flow hijack on configurations without strict NULL-page protection, beyond immediate denial of service.\nA:H - The NULL pointer dereference in psxpad_set_motor_level() during psxpad_spi_suspend() causes a kernel Oops/panic that aborts or corrupts the suspend sequence, denying availability of a clean sleep/resume cycle on affected systems."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/input/joystick/psxpad-spi.c"],"versions":[{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"e980066e434a9c74ff1665ed9140427e95b0ee7c","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"1bba6bd6861b1e0c8ecf20cd1892f0d3877c02a2","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"86531cdfb3a03213e2569deed5195412a4e3f7ee","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"da6b8b05db0cf43e0cc198431fa8ee9739b3b817","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"1edcb7ffee7ac4dc35cbe5bbd0e27bac3614ebe4","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"8d622c58205adbc8af19864e277386528b671345","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"62e25677d1440085381b047ec4984be9b6793759","status":"affected","versionType":"git"},{"version":"8be193c7b1f44d3f4dcb27107df0831709c2deb1","lessThan":"732f38c36059e68ba3b4b89c56911d777fd3185c","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/input/joystick/psxpad-spi.c"],"versions":[{"version":"4.12","status":"affected"},{"version":"0","lessThan":"4.12","status":"unaffected","versionType":"semver"},{"version":"5.10.266","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.217","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.184","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.153","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.105","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.46","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.1.10","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":"4.12","versionEndExcluding":"5.10.266"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"5.15.217"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.1.184"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.6.153"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.12.105"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"6.18.46"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"7.1.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.12","versionEndExcluding":"7.2"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/e980066e434a9c74ff1665ed9140427e95b0ee7c"},{"url":"https://git.kernel.org/stable/c/1bba6bd6861b1e0c8ecf20cd1892f0d3877c02a2"},{"url":"https://git.kernel.org/stable/c/86531cdfb3a03213e2569deed5195412a4e3f7ee"},{"url":"https://git.kernel.org/stable/c/da6b8b05db0cf43e0cc198431fa8ee9739b3b817"},{"url":"https://git.kernel.org/stable/c/1edcb7ffee7ac4dc35cbe5bbd0e27bac3614ebe4"},{"url":"https://git.kernel.org/stable/c/8d622c58205adbc8af19864e277386528b671345"},{"url":"https://git.kernel.org/stable/c/62e25677d1440085381b047ec4984be9b6793759"},{"url":"https://git.kernel.org/stable/c/732f38c36059e68ba3b4b89c56911d777fd3185c"}],"title":"Input: psxpad-spi - set driver data before use","x_generator":{"engine":"bippy-1.2.0"}}}}