CVE-2026-63915

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

State
Published
Severity
8.8 High
Published
Jul 19, 2026
Updated
Aug 5, 2026
Reserved
Jul 19, 2026

Read the record on cve.org

Description

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.

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
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before ed6d5d97dad0334a7f43d218753429cbe2f70a4fAffected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before b99366d74b535d0cadb1ef73e04639415d9ff3b7Affected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before 37382293f174b82a0616c8295e32b1fc8e13d1edAffected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before c4cc6b3b0013acb3ed0b2b60e57dfae98647fe98Affected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before 1905f5ec3641b2b234bb63549c8ca11ab85466ebAffected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before 22d41b176b9989efd21c3b2d3abf6728f05b9d9aAffected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before 83b1362edc9d6ae376c6f36da116e2c70f2e70a6Affected
  • 8b8d2e08bf0d50193931afd27482a59376b66b2b to before f040e590c035bfd9553fe79ee9585caf1b14d67bAffected
LinuxLinux
  • 3.5Affected
  • before 3.5Not affected
  • 5.10.259 through 5.10.*Not affected
  • 5.15.210 through 5.15.*Not affected
  • 6.1.176 through 6.1.*Not affected
  • 6.6.143 through 6.6.*Not affected
  • 6.12.93 through 6.12.*Not affected
  • 6.18.35 through 6.18.*Not affected
  • 7.0.12 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.