Description
In the Linux kernel, the following vulnerability has been resolved:

nfc: llcp: Fix use-after-free race in nfc_llcp_recv_cc()

A race condition exists in the NFC LLCP connection state machine where
the connection acceptance packet (CC) can be processed concurrently with
socket release. This can lead to a use-after-free of the socket object.

When nfc_llcp_recv_cc() moves the socket from the connecting_sockets
list to the sockets list, it does so without holding the socket lock.
If llcp_sock_release() is executing concurrently, it might have already
unlinked the socket and dropped its references, which can result in
nfc_llcp_recv_cc() linking a freed socket into the live list.

Fix this by holding lock_sock() during the state transition and list
movement in nfc_llcp_recv_cc(). After acquiring the lock, check if
the socket is still hashed to ensure it hasn't already been unlinked
and marked for destruction by the release path. This aligns the locking
pattern with recv_hdlc() and recv_disc().
Published: 2026-07-19
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A race condition in the Linux kernel NFC LLCP connection state machine allows the acceptance packet (CC) to be processed concurrently with the release of a socket. When the socket is moved from the connecting list to the active list without holding the socket lock, a concurrent release can unlink the socket and drop its references. The subsequent transition may link a freed socket back into the active list, creating a use‑after‑free in kernel memory. The flaw is identified as CWE‑364 and can cause kernel memory corruption that may lead to arbitrary code execution or privilege escalation if successfully exploited.

Affected Systems

Any Linux kernel that includes the NFC subsystem with LLCP and has not incorporated the patch that locks the socket during the state transition is affected. This includes all distributions with a kernel version predating the commit that introduced lock_sock() in nfc_llcp_recv_cc(). The vulnerability does not affect systems that have the NFC modules disabled or that run a kernel version containing the fix.

Risk and Exploitability

The CVSS score of 8.8 indicates high severity, while the EPSS score of < 1% suggests that exploitation attempts are currently rare. The attack requires local access to an NFC interface and a crafted NFC payload or malicious NFC device that sends a connection acceptance packet while the socket is being released. Because the vector relies on NFC hardware, systems without such hardware are not exposed. The flaw is not listed in the CISA KEV catalog at this time, but its nature means it could enable kernel memory corruption leading to local privilege escalation.

Generated by OpenCVE AI on August 5, 2026 at 02:12 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply a kernel update that includes the commit adding lock_sock() around the socket transition in nfc_llcp_recv_cc().
  • If a kernel upgrade is not immediately possible, unload or blacklist the NFC-related modules (nfc, nfc_llcp, nfc_modem) to prevent the vulnerable code from loading.
  • Disable the NFC hardware or the LLCP interface at boot time (e.g., by removing the device from the BIOS/firmware configuration or adding a kernel parameter) if the system does not require NFC functionality.

Generated by OpenCVE AI on August 5, 2026 at 02:12 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
History

Sun, 26 Jul 2026 08:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Wed, 22 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Wed, 22 Jul 2026 12:15:00 +0000


Mon, 20 Jul 2026 14:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Sun, 19 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: nfc: llcp: Fix use-after-free race in nfc_llcp_recv_cc() A race condition exists in the NFC LLCP connection state machine where the connection acceptance packet (CC) can be processed concurrently with socket release. This can lead to a use-after-free of the socket object. When nfc_llcp_recv_cc() moves the socket from the connecting_sockets list to the sockets list, it does so without holding the socket lock. If llcp_sock_release() is executing concurrently, it might have already unlinked the socket and dropped its references, which can result in nfc_llcp_recv_cc() linking a freed socket into the live list. Fix this by holding lock_sock() during the state transition and list movement in nfc_llcp_recv_cc(). After acquiring the lock, check if the socket is still hashed to ensure it hasn't already been unlinked and marked for destruction by the release path. This aligns the locking pattern with recv_hdlc() and recv_disc().
Title nfc: llcp: Fix use-after-free race in nfc_llcp_recv_cc()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-05T12:38:10.194Z

Reserved: 2026-07-19T07:54:57.026Z

Link: CVE-2026-64010

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity :

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-64010 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-05T02:15:03Z

Weaknesses
  • CWE-364

    Signal Handler Race Condition