CVE-2025-21921: net: ethtool: netlink: Allow NULL nlattrs when getting a phy_device
In the Linux kernel, the following vulnerability has been resolved:
net: ethtool: netlink: Allow NULL nlattrs when getting a phy_device
ethnl_req_get_phydev() is used to lookup a phy_device, in the case an
ethtool netlink command targets a specific phydev within a netdev's
topology.
It takes as a parameter a const struct nlattr *header that's used for
error handling :
if (!phydev) {
NL_SET_ERR_MSG_ATTR(extack, header,
"no phy matching phyindex");
return ERR_PTR(-ENODEV);
}
In the notify path after a ->set operation however, there's no request
attributes available.
The typical callsite for the above function looks like:
phydev = ethnl_req_get_phydev(req_base, tb[ETHTOOL_A_XXX_HEADER],
info->extack);
So, when tb is NULL (such as in the ethnl notify path), we have a nice
crash.
It turns out that there's only the PLCA command that is in that case, as
the other phydev-specific commands don't have a notification.
This commit fixes the crash by passing the cmd index and the nlattr
array separately, allowing NULL-checking it directly inside the helper.
Security readout for executives and security teams
Plain-English summary
CVE-2025-21921 is a Linux kernel crash bug in ethtool netlink handling for PHY devices. Under a PLCA-related notification path, missing request attributes can trigger a NULL handling failure. The public record does not provide CVSS, privilege requirements, or confirmed exploitation, so urgency depends on where affected kernels and relevant network hardware features are deployed.
Executive priority
Treat this as a targeted kernel availability risk rather than a confirmed internet-scale emergency. Prioritize patch validation for exposed infrastructure, network appliances, and embedded Linux assets on affected kernel branches. Lack of CVSS and exploit evidence lowers confidence in business impact, but kernel crash bugs still warrant planned remediation.
Technical view
ethnl_req_get_phydev() expected a netlink attribute header for error reporting. In the notify path after a set operation, request attributes can be absent, leaving tb NULL. The described affected case is PLCA. The fix changes the helper interface so command index and attribute array are passed separately and NULL-checked internally.
Likely exposure
Systems running affected Linux kernel versions are the likely exposure, especially where ethtool netlink PHY-device operations and PLCA support are relevant. The source indicates affected Linux 6.12 lineage and fixes associated with 6.12.19, 6.13.7, and 6.14, but downstream vendor backports must be verified.
Exploitation context
The source describes a kernel crash condition, not code execution. KEV is false and the supplied sources do not claim active exploitation or provide exploit maturity. Practical risk depends on access needed to invoke the relevant ethtool netlink operation, which is not stated in the bundle.
Researcher notes
The key condition is a NULL netlink attribute array in an ethtool notify path after set, apparently limited to PLCA among phydev-specific commands. The public bundle does not establish attacker privileges, reachable interfaces, or distribution-specific status. Validate using kernel source or vendor backport evidence, not version strings alone.
Mitigation direction
Check your Linux vendor advisory for CVE-2025-21921 coverage and backports.
Update to a vendor kernel containing the referenced stable fixes.
Prioritize systems using affected 6.12 or 6.13 kernel lines.
Review network-management tooling that performs ethtool netlink PHY or PLCA changes.
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-2025-21921 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
4Source 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.
Apr 1, 2025, 15:40 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.