CVE-2026-63915

nfc: hci: fix out-of-bounds read in HCP header parsing

High · published July 19, 2026

CVSS v3.1
8.8
EPSS
0%
Percentile
28.0
In the wild
Unconfirmed
What it is

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

nfc: hci: fix out-of-bounds read in HCP header parsing

Both nfc_hci_recv_from_llc() and nci_hci_data_received_cb() read

packet->header from skb->data at function entry without first checking

that the buffer holds at least one byte. A malicious NFC peer can send

a 0-byte HCP frame that passes through the SHDLC layer and reaches

these functions, causing an out-of-bounds heap read of packet->header.

The same 0-byte frame, if queued as a non-final fragment, also causes

the reassembly loop to underflow msg_len to UINT_MAX, triggering

skb_over_panic() when the reassembled skb is written.

Fix this by adding a pskb_may_pull() check at the entry of each

function before packet->header is first accessed. The existing

pskb_may_pull() checks before the reassembled hcp_skb is cast to

struct hcp_packet remain in place to guard the 2-byte HCP message

header.

The record
Technical detail
CVSS v3.1
8.8 · HIGH
Vector
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00354 · 28.0th percentile
Published
2026-07-19T14:55Z
EPSS history
Timeline
  • 19 JUL 14:55Z
    nfc: hci: fix out-of-bounds read in HCP header parsing
    cvelistv5