CVE-2023-53426: xsk: Fix xsk_diag use-after-free error during socket cleanup
In the Linux kernel, the following vulnerability has been resolved:
xsk: Fix xsk_diag use-after-free error during socket cleanup
Fix a use-after-free error that is possible if the xsk_diag interface
is used after the socket has been unbound from the device. This can
happen either due to the socket being closed or the device
disappearing. In the early days of AF_XDP, the way we tested that a
socket was not bound to a device was to simply check if the netdevice
pointer in the xsk socket structure was NULL. Later, a better system
was introduced by having an explicit state variable in the xsk socket
struct. For example, the state of a socket that is on the way to being
closed and has been unbound from the device is XSK_UNBOUND.
The commit in the Fixes tag below deleted the old way of signalling
that a socket is unbound, setting dev to NULL. This in the belief that
all code using the old way had been exterminated. That was
unfortunately not true as the xsk diagnostics code was still using the
old way and thus does not work as intended when a socket is going
down. Fix this by introducing a test against the state variable. If
the socket is in the state XSK_UNBOUND, simply abort the diagnostic's
netlink operation.
Security readout for executives and security teams
Plain-English summary
CVE-2023-53426 is a Linux kernel use-after-free in AF_XDP socket diagnostics during socket cleanup. A local user could potentially cause serious confidentiality, integrity, and availability impact on affected kernels. The issue is not listed as known exploited in the provided sources.
Executive priority
Treat as a high-priority kernel maintenance item, especially for multi-user or workload-hosting systems. There is no cited active exploitation, so emergency response depends on local exposure, but patch planning should not wait for proof-of-concept availability.
Technical view
The xsk_diag netlink diagnostic path still relied on an obsolete dev pointer check to detect unbound AF_XDP sockets. After cleanup unbound sockets used XSK_UNBOUND state instead, leaving a use-after-free window when diagnostics run after unbind, close, or device disappearance.
Likely exposure
Exposure is limited to affected Linux kernel builds listed by the CVE. The CVSS vector is local, low complexity, low privileges, and no user interaction. Risk is most relevant on systems where untrusted local users or workloads can reach AF_XDP/xsk diagnostic functionality.
Exploitation context
The source bundle does not show active exploitation, public weaponization, or CISA KEV listing. The impact rating is high because successful local exploitation could affect confidentiality, integrity, and availability, but evidence is limited to the kernel fix description and CVE metadata.
Researcher notes
Root cause is stale lifecycle validation in xsk_diag after AF_XDP socket unbind signaling moved from dev == NULL to an explicit state variable. The fix aborts the diagnostic netlink operation when the socket state is XSK_UNBOUND.
Mitigation direction
Upgrade affected Linux kernels to vendor or stable releases containing the referenced fixes.
Check distribution advisories for backported fixes before relying on upstream version numbers.
Prioritize shared servers, container hosts, and systems with untrusted local users.
If immediate patching is delayed, follow vendor guidance for exposure reduction.
Track the CVE record for updated affected-version and fix information.
Validation and detection
Inventory Linux kernel versions across affected fleets.
Compare package changelogs against CVE-2023-53426 and referenced stable commits.
Confirm patched kernels are booted, not only installed.
Identify systems allowing untrusted local shell, service, or workload execution.
Document any AF_XDP/xsk_diag exposure assumptions for risk acceptance.
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
5Source 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.