PT-2026-85640 · Linux · Linux
CVE-2026-80799
·
Published
2026-09-04
·
Updated
2026-09-04
None
No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
nfc: llcp: fix OOB read and u8 offset wrap in TLV parsers
nfc llcp parse gb tlv() and nfc llcp parse connection tlv() contain
three related bugs in their TLV parsing loops:
-
'offset' is declared u8 but tlv array len is u16. When TLV data advances offset past 255 it silently wraps to zero, causing infinite loops or double-processing of buffer data.
-
Before reading tlv[0] (type) and tlv[1] (length) there is no check that offset+2 <= tlv array len. A truncated TLV causes an OOB read of one byte past the buffer end.
-
After reading the length field, the value bytes are accessed without checking offset+2+length <= tlv array len. A crafted length=0xFF on a short buffer causes up to 255 bytes of OOB read past the buffer end.
Both functions are reachable without authentication via
nfc llcp set remote gb() which feeds remote LLCP general bytes
directly into nfc llcp parse gb tlv() with no additional
validation.
Fix all three issues by widening offset from u8 to u16 and adding
bounds checks for both the TLV header and value field before each
access.
Found an issue in the description? Have something to add? Feel free to write us 👾
Related Identifiers
Affected Products
Linux