CVE-2026-31629

nfc: llcp: add missing return after LLCP_CLOSED checks

State
Published
Severity
8.8 High
Published
Apr 24, 2026
Updated
Oct 15, 2026
Reserved
Mar 9, 2026

Read the record on cve.org

Description

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

nfc: llcp: add missing return after LLCP_CLOSED checks

In nfc_llcp_recv_hdlc() and nfc_llcp_recv_disc(), when the socket state is LLCP_CLOSED, the code correctly calls release_sock() and nfc_llcp_sock_put() but fails to return. Execution falls through to the remainder of the function, which calls release_sock() and nfc_llcp_sock_put() again. This results in a double release_sock() and a refcount underflow via double nfc_llcp_sock_put(), leading to a use-after-free.

Add the missing return statements after the LLCP_CLOSED branches in both functions to prevent the fall-through.

Scores

CVSSScoreVectorSource
3.18.8 HighCVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before b2a23529593d011fb433a3d711fc597ed6a6bd2fAffected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before 665315df9c3486cb213fc44d83cc8bcd47fe0d26Affected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before 9b49e2a4b8219a2fc5cebf94f4ec34e509aff8a6Affected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before 0eb1263a3b8c36418c9ba295c9ab3abed664edbfAffected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before 796e0cac058252d0ad34ebe288e6f7979b5fc9b2Affected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before 8977fad2b3c6eefd414131168d597c5d1d5e1abfAffected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before ff3d9e8f7244293e303f7b6ef70774291c7c27e9Affected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before aba4712e8f0381cd5d196534ce2ad082626a5ab6Affected
  • d646960f7986fefb460a2b062d5ccc8ccfeacc3a to before 2b5dd4632966c39da6ba74dbc8689b309065e82cAffected
LinuxLinux
  • 3.3Affected
  • before 3.3Not affected
  • 5.10.258 through 5.10.*Not affected
  • 5.15.209 through 5.15.*Not affected
  • 6.1.175 through 6.1.*Not affected
  • 6.6.136 through 6.6.*Not affected
  • 6.12.83 through 6.12.*Not affected
  • 6.18.24 through 6.18.*Not affected
  • 6.19.14 through 6.19.*Not affected
  • 7.0.1 through 7.0.*Not affected
  • 7.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.