{
  "affected": [
    {
      "ranges": [
        {
          "events": [
            {
              "introduced": "8b8d2e08bf0d50193931afd27482a59376b66b2b"
            },
            {
              "fixed": "ed6d5d97dad0334a7f43d218753429cbe2f70a4f"
            },
            {
              "fixed": "b99366d74b535d0cadb1ef73e04639415d9ff3b7"
            },
            {
              "fixed": "37382293f174b82a0616c8295e32b1fc8e13d1ed"
            },
            {
              "fixed": "c4cc6b3b0013acb3ed0b2b60e57dfae98647fe98"
            },
            {
              "fixed": "1905f5ec3641b2b234bb63549c8ca11ab85466eb"
            },
            {
              "fixed": "22d41b176b9989efd21c3b2d3abf6728f05b9d9a"
            },
            {
              "fixed": "83b1362edc9d6ae376c6f36da116e2c70f2e70a6"
            },
            {
              "fixed": "f040e590c035bfd9553fe79ee9585caf1b14d67b"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Linux",
        "name": "Kernel"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "3.5.0"
            },
            {
              "fixed": "5.10.259"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "5.11.0"
            },
            {
              "fixed": "5.15.210"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "5.16.0"
            },
            {
              "fixed": "6.1.176"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.2.0"
            },
            {
              "fixed": "6.6.143"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.7.0"
            },
            {
              "fixed": "6.12.93"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.13.0"
            },
            {
              "fixed": "6.18.35"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.19.0"
            },
            {
              "fixed": "7.0.12"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63915.json"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nnfc: hci: fix out-of-bounds read in HCP header parsing\n\nBoth nfc_hci_recv_from_llc() and nci_hci_data_received_cb() read\npacket-\u003eheader from skb-\u003edata at function entry without first checking\nthat the buffer holds at least one byte. A malicious NFC peer can send\na 0-byte HCP frame that passes through the SHDLC layer and reaches\nthese functions, causing an out-of-bounds heap read of packet-\u003eheader.\nThe same 0-byte frame, if queued as a non-final fragment, also causes\nthe reassembly loop to underflow msg_len to UINT_MAX, triggering\nskb_over_panic() when the reassembled skb is written.\n\nFix this by adding a pskb_may_pull() check at the entry of each\nfunction before packet-\u003eheader is first accessed. The existing\npskb_may_pull() checks before the reassembled hcp_skb is cast to\nstruct hcp_packet remain in place to guard the 2-byte HCP message\nheader.",
  "id": "CVE-2026-63915",
  "modified": "2026-07-21T03:42:02.921287637Z",
  "published": "2026-07-19T14:55:19.305Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/1905f5ec3641b2b234bb63549c8ca11ab85466eb"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/22d41b176b9989efd21c3b2d3abf6728f05b9d9a"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/37382293f174b82a0616c8295e32b1fc8e13d1ed"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/83b1362edc9d6ae376c6f36da116e2c70f2e70a6"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/b99366d74b535d0cadb1ef73e04639415d9ff3b7"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/c4cc6b3b0013acb3ed0b2b60e57dfae98647fe98"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/ed6d5d97dad0334a7f43d218753429cbe2f70a4f"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/f040e590c035bfd9553fe79ee9585caf1b14d67b"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63915.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-63915"
    },
    {
      "type": "PACKAGE",
      "url": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
    }
  ],
  "schema_version": "1.8.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "nfc: hci: fix out-of-bounds read in HCP header parsing"
}