CVE-2026-31487
spi: use generic driver_override infrastructure
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
In the Linux kernel, the following vulnerability has been resolved: spi: use generic driver_override infrastructure When a driver is probed through __driver_attach(), the bus' match()
callback is called without the device lock held, thus accessing the
driver_override field without a lock, which can cause a UAF. Fix this by using the driver-core driver_override infrastructure taking
care of proper locking internally. Note that calling match() from __driver_attach() without the device lock
held is intentional. [1] Also note that we do not enable the driver_override feature of struct
bus_type, as SPI - in contrast to most other buses - passes "" to
sysfs_emit() when the driver_override pointer is NULL. Thus, printing
"
" instead of "(null)
".
CVSS Scores
SSVC
- Decision:-
Timeline
- 2026-03-09 CVE Reserved
- 2026-04-22 CVE Published
- 2026-04-28 CVE Updated
- 2026-04-28 EPSS Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-667: Improper Locking
CAPEC
References (5)
| URL | Tag | Source |
|---|---|---|
| https://git.kernel.org/stable/c/5039563e7c25eccd7fec1de6706011009d1c5665 | Vuln. Introduced |
| URL | Date | SRC |
|---|
| URL | Date | SRC |
|---|
Affected Vendors, Products, and Versions
| Vendor | Product | Version | Other | Status | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
| Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 4.20 < 6.12.80 Search vendor "Linux" for product "Linux Kernel" and version " >= 4.20 < 6.12.80" | en |
Affected
| ||||||
| Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 4.20 < 6.18.21 Search vendor "Linux" for product "Linux Kernel" and version " >= 4.20 < 6.18.21" | en |
Affected
| ||||||
| Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 4.20 < 6.19.11 Search vendor "Linux" for product "Linux Kernel" and version " >= 4.20 < 6.19.11" | en |
Affected
| ||||||
| Linux Search vendor "Linux" | Linux Kernel Search vendor "Linux" for product "Linux Kernel" | >= 4.20 < 7.0 Search vendor "Linux" for product "Linux Kernel" and version " >= 4.20 < 7.0" | en |
Affected
| ||||||
