In the Linux kernel, the following vulnerability has been resolved:
macsec: fix UAF bug for real_dev
Create a new macsec device but not get reference to real_dev. That can
not ensure that real_dev is freed after macsec. That will trigger the
UAF bug for real_dev as following:
==================================================================
BUG: KASAN: use-after-free in macsec_get_iflink+0x5f/0x70 drivers/net/macsec.c:3662
Call Trace:
...
macsec_get_iflink+0x5f/0x70 drivers/net/macsec.c:3662
dev_get_iflink+0x73/0xe0 net/core/dev.c:637
default_operstate net/core/link_watch.c:42 [inline]
rfc2863_policy+0x233/0x2d0 net/core/link_watch.c:54
linkwatch_do_dev+0x2a/0x150 net/core/link_watch.c:161
Allocated by task 22209:
...
alloc_netdev_mqs+0x98/0x1100 net/core/dev.c:10549
rtnl_create_link+0x9d7/0xc00 net/core/rtnetlink.c:3235
veth_newlink+0x20e/0xa90 drivers/net/veth.c:1748
Freed by task 8:
...
kfree+0xd6/0x4d0 mm/slub.c:4552
kvfree+0x42/0x50 mm/util.c:615
device_release+0x9f/0x240 drivers/base/core.c:2229
kobject_cleanup lib/kobject.c:673 [inline]
kobject_release lib/kobject.c:704 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x1c8/0x540 lib/kobject.c:721
netdev_run_todo+0x72e/0x10b0 net/core/dev.c:10327
After commit faab39f63c1f ("net: allow out-of-order netdev unregistration")
and commit e5f80fcf869a ("ipv6: give an IPv6 dev to blackhole_netdev"), we
can add dev_hold_track() in macsec_dev_init() and dev_put_track() in
macsec_free_netdev() to fix the problem.
Security readout for executives and security teams
Plain-English summary
This is a Linux kernel memory-safety flaw in MACsec network device handling. A local, low-privileged actor may be able to trigger use-after-free behavior, potentially affecting confidentiality, integrity, and availability. The sources do not show remote exploitation or confirmed active abuse.
Executive priority
High priority for Linux fleets with multi-user access, privileged workloads, or network administration capabilities. Patch through normal urgent kernel maintenance unless vendor guidance indicates broader exposure.
Technical view
The MACsec driver failed to hold a reference to the underlying real_dev when creating a MACsec device. Later link-state processing could dereference freed netdev memory, producing a CWE-416 use-after-free. The documented fix adds dev_hold_track() in macsec_dev_init() and dev_put_track() in macsec_free_netdev().
Likely exposure
Linux systems running affected kernel versions or downstream builds with vulnerable MACsec code are the exposure focus. Risk is highest where untrusted local users or constrained workloads can influence network device creation. Evidence provided does not establish exposure for non-Linux products.
Exploitation context
The CVSS vector is local, low complexity, low privilege, and no user interaction. KEV is false, and the provided sources do not report public exploitation. Treat this as serious kernel hardening work, not as evidence of an internet-facing emergency.
Researcher notes
The source evidence is kernel commit and CVE metadata focused on root cause and fix. It does not provide exploit proof, affected distribution packages, or operational mitigations beyond applying corrected kernel code.
Mitigation direction
Apply vendor kernel updates containing the referenced upstream MACsec fixes.
Prioritize shared Linux hosts and systems running untrusted local workloads.
Check distribution advisories for exact fixed package versions.
Use vendor-supported controls if MACsec must be temporarily restricted.
Validation and detection
Inventory Linux kernel versions across servers, appliances, and container hosts.
Identify systems using MACsec or allowing network device administration by workloads.
Compare running kernels against vendor advisories and referenced stable commits.
Confirm patched builds include the real_dev reference-counting fix.
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.
1CVSS vectors
3Timeline events
1ADP providers
4Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: noTechnical Impact: total
CVSS vector scores
1 official score
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.