CVE-2026-98483None▾ SunlitIn the Linux kernel, the following vulnerability has been resolved: nfc: fix use-after-free in nfc_get_local_general_bytes Commit 6709d4b7bc2e ("net: nfc: Fix use-after-free caused by nfc_llcp_find_local") attempted to fix a use-after-…
▾ Sunlit zone — Low / medium · no exploitation signal
impact 2.8 · likelihood 0 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
In the Linux kernel, the following vulnerability has been resolved:
nfc: fix use-after-free in nfc_get_local_general_bytes
Commit 6709d4b7bc2e ("net: nfc: Fix use-after-free caused by nfc_llcp_find_local") attempted to fix a use-after-free (UAF) issue by invoking nfc_llcp_local_put(local) after accessing local->gb. However, if the reference count drops to zero, local is freed immediately, leading to a use-after-free when callers access the returned pointer. Alternative approaches using dynamic allocation (e.g. kmemdup) introduced memory leaks because callers consistently treat the returned pointer as borrowed memory.
Fix this properly by refactoring nfc_llcp_general_bytes() and nfc_get_local_general_bytes() to accept a caller-provided output buffer (out_gb) and its maximum length (gb_max_len). The general bytes are safely copied into out_gb before calling nfc_llcp_local_put(local), ensuring safe lifetime management without ownership transfer complications.
Update all callers across drivers (microread, pn533, pn544, st21nfca, digital_dep, and nci) to provide their own destination buffers and pass them to nfc_get_local_general_bytes().
Linux >= 96f2c6f272ec04083d828de46285a7d7b17d1aad < 25bfa673adc70189c0bc872940421ae59f789cf6Linux >= fc8429f8d86801f092fbfbd257c3af821ac0dcd3 < 2b31d0cc95856c856ada91f943fb14dfdf29a923Linux >= 425d9d3a92df7d96b3cfb7ee5c240293a21cbde3 < c40f61a6a413f3eaf028e5fe367fd9749e503ab0Linux >= 6709d4b7bc2e079241fdef15d1160581c5261c10 < 19bcfc2a56d0b82919079b5424c5a9a0ac897dcfLinux >= 6709d4b7bc2e079241fdef15d1160581c5261c10 < d8c929e9afdbc33b1876ecb97a517e850449b5bdLinux >= 6709d4b7bc2e079241fdef15d1160581c5261c10 < 841af260ff477f6191872bc3b2e15488615c1827Linux >= 6709d4b7bc2e079241fdef15d1160581c5261c10 < 9ede11e12f965ace97c4e0f606667f24fb41e7e1Linux >= 6709d4b7bc2e079241fdef15d1160581c5261c10 < dcab71a7011918f6fdba7adcec02d217dcb84b8dLinux dd6ff3f3862709ab1a12566e73b9d6a9b8f6e548Linux b3ad46e155a6d91b36c6e892019a43e3ef3c696dLinux e5207c1d69b1a9707615ab6ff9376e59fc096815Linux >= 5.10.188 < 5.10.271Linux >= 5.15.121 < 5.15.222Linux >= 6.1.39 < 6.1.189Linux >= 5.4.251 < 5.5Linux >= 6.3.13 < 6.4Linux >= 6.4.4 < 6.5Linux 6.5Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
Connected by shared product, vendor, weakness, or advisory.
CVE-2026-98770Noneusb: gadget: midi2: Fix the jack descriptor array sizes
CVE-2026-98769Noneusb: gadget: f_uac1_legacy: validate bRequest index in generic_{set,get}_cmd
CVE-2026-98774Nonerust_binder: cancel deferred work items in thread exit
CVE-2026-98772NoneUSB: serial: fix port tear down use-after-free
CVE-2026-98771Noneusb: storage: sierra_ms: reject short SWoC info transfers
CVE-2026-98776Nonebinderfs: fix UAF write in binder_add_device