CVE-2026-45989: of: unittest: fix use-after-free in testdrv_probe()
In the Linux kernel, the following vulnerability has been resolved:
of: unittest: fix use-after-free in testdrv_probe()
The function testdrv_probe() retrieves the device_node from the PCI
device, applies an overlay, and then immediately calls of_node_put(dn).
This releases the reference held by the PCI core, potentially freeing
the node if the reference count drops to zero. Later, the same freed
pointer 'dn' is passed to of_platform_default_populate(), leading to a
use-after-free.
The reference to pdev->dev.of_node is owned by the device model and
should not be released by the driver. Remove the erroneous of_node_put()
to prevent premature freeing.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel memory-lifetime bug in device-tree unittest code. A driver releases a device-node reference it does not own, then reuses that pointer, creating a use-after-free condition. The sources do not provide CVSS, severity, or evidence of active exploitation.
Executive priority
Moderate tracking priority, not emergency priority from current evidence. Patch through normal kernel maintenance unless internal exposure confirms this test-driver path is enabled on critical systems.
Technical view
CVE-2026-45989 affects Linux kernel of unittest testdrv_probe(). The function obtains pdev->dev.of_node, applies an overlay, incorrectly calls of_node_put(dn), and later passes dn to of_platform_default_populate(). The fix removes the erroneous reference release because the device model owns that node reference.
Likely exposure
Exposure is most plausible on affected Linux kernels where this OF unittest PCI test driver path is present and reachable. The supplied data lists affected Linux versions but does not establish broad production exposure or distribution package status.
Exploitation context
CISA KEV status is false in the bundle. No cited source claims exploitation in the wild, public weaponization, or remote attackability. The impact should be treated as uncertain until vendor advisories provide severity and deployment context.
Researcher notes
The source bundle is narrow: it describes root cause and fix but lacks CVSS, CWE, exploitability analysis, and distribution advisories. Treat exposure conclusions as conditional on kernel configuration and reachability of the unittest driver path.
Mitigation direction
Apply Linux vendor or distribution kernel updates containing the referenced stable fixes.
Track vendor advisories for affected package versions and backport status.
Prioritize systems running affected Linux kernel versions listed in the CVE data.
Avoid enabling unnecessary OF unittest kernel test functionality in production builds.
Do not deploy custom kernels without the upstream stable fix.
Validation and detection
Inventory Linux kernel versions across servers, appliances, and embedded systems.
Check whether vendor kernel packages include one of the referenced stable commits.
Review custom kernel configurations for OF unittest test functionality.
Confirm patched kernels after reboot using normal asset management evidence.
Document exceptions where vendor guidance is not yet available.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2026-45989 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
6Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
May 27, 2026, 12:55 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.