CVE-2025-21934: rapidio: fix an API misues when rio_add_net() fails
In the Linux kernel, the following vulnerability has been resolved:
rapidio: fix an API misues when rio_add_net() fails
rio_add_net() calls device_register() and fails when device_register()
fails. Thus, put_device() should be used rather than kfree(). Add
"mport->net = NULL;" to avoid a use after free issue.
Security readout for executives and security teams
Plain-English summary
A Linux kernel RapidIO error path can leave a freed object referenced after network registration fails. Subsequent use could corrupt kernel memory, potentially causing serious confidentiality, integrity, or availability impact. Exploitation requires local access under the supplied CVSS vector.
Executive priority
Treat as a high-priority kernel maintenance issue on RapidIO-enabled systems, especially multi-user or otherwise locally accessible hosts. Prioritize exposure confirmation and vendor-supported updates. Systems without RapidIO usage likely warrant lower operational urgency, but that conclusion should be validated rather than assumed.
Technical view
When rio_add_net() encounters device_register() failure, the vulnerable code frees the device incorrectly with kfree() instead of releasing its reference through put_device(). It also leaves mport->net pointing to freed memory, creating a CWE-416 use-after-free condition. Referenced Linux stable commits correct both issues.
Likely exposure
Exposure appears concentrated on affected Linux systems using the RapidIO subsystem where network registration can reach the device_register() failure path. The supplied version data is ambiguous and provides no CPEs, so kernel version alone may not reliably establish exposure. Downstream vendor patch status must be checked.
Exploitation context
CISA KEV status is false, and no supplied source reports active exploitation or a public exploit. The CVSS 3.1 vector describes a local, low-complexity attack requiring low privileges and no user interaction. The bundle does not explain how an attacker could reliably trigger the necessary registration failure.
Researcher notes
The central weakness is lifetime-management inconsistency following device_register() failure. The corrected behavior releases the registered device reference through put_device() and nulls mport->net to prevent stale access. The bundle supports high theoretical impact but does not document trigger reliability, demonstrated exploitation, affected configuration defaults, or forensic indicators.
Mitigation direction
Update to a vendor-supported kernel containing the applicable referenced Linux stable fix.
Check distribution security advisories for backported fixes rather than relying solely on kernel version numbers.
If patching is delayed, ask the vendor for approved RapidIO-specific risk-reduction guidance.
Prioritize systems where RapidIO is configured, loaded, or operationally required.
Validation and detection
Inventory installed kernel builds and identify systems using or enabling the RapidIO subsystem.
Verify the exact vendor package includes the fix or an equivalent backport.
Confirm patched source uses put_device() and clears mport->net after rio_add_net() failure.
Review kernel logs for RapidIO-related faults, while noting the sources provide no detection indicators.
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.
cwe · low confidence lookup
CWE-416: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
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.
2CVSS vectors
3Timeline events
2ADP providers
11Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: total
CVSS vector scores
2 official scores
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-416 · source CWE mapping
Use After Free
Use After Free represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.