Skip to content
Heist/ feed
Unrated

nfc: st21nfca: validate received frame size

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: nfc: st21nfca: validate received frame size st21nfca_hci_i2c_repack() trims a received frame at its EOF marker before removing byte stuffing. It then assumes the truncated frame contains the LLC header and two CRC bytes, and it unconditionally reads the byte after an escape marker. A malformed frame can place EOF immediately after the start marker or can end its data portion with an escape marker. The former leaves too few bytes for check_crc(), while the latter makes the unstuffing loop read past the current skb length. Require the minimum framing bytes both before and after unstuffing. Use separate input and output cursors while removing byte stuffing, and reject an escape marker without its encoded byte. This keeps malformed frames within the received frame boundary before CRC processing.

Announced Group revision 1
Original source ↗

CVE-2026-98582

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-98582

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "8934d2889ae16a7c77520e002398d0689c1ecea5",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "d0596ee6c4b928a5c288790522a7495ee867da72",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "f526c218a149a30f110ce434ff17e033042404b8",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "d4008c3499dba7829bfe002edd99a8bff8ae3a7c",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "91be5161f37b0a2795ad6806d69be5fa74522e5c",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "57919d0662d8856211b794140172e51ca389f23d",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "7b996cc06dda54c02a5aa607bda01109f0ac51e6",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "3096e25a3e40b73afd59e46f3bf8d84f919992a1",
        "lessThan": "a653c01ce447f10c36b901646888c0330363af4f",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "drivers/nfc/st21nfca/i2c.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "3.16"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "3.16",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "5.10.271",
        "versionType": "semver",
        "lessThanOrEqual": "5.10.*"
      },
      {
        "status": "unaffected",
        "version": "5.15.222",
        "versionType": "semver",
        "lessThanOrEqual": "5.15.*"
      },
      {
        "status": "unaffected",
        "version": "6.1.189",
        "versionType": "semver",
        "lessThanOrEqual": "6.1.*"
      },
      {
        "status": "unaffected",
        "version": "6.6.158",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.12.112",
        "versionType": "semver",
        "lessThanOrEqual": "6.12.*"
      },
      {
        "status": "unaffected",
        "version": "6.18.55",
        "versionType": "semver",
        "lessThanOrEqual": "6.18.*"
      },
      {
        "status": "unaffected",
        "version": "7.2.9",
        "versionType": "semver",
        "lessThanOrEqual": "7.2.*"
      },
      {
        "status": "unaffected",
        "version": "7.3",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "drivers/nfc/st21nfca/i2c.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-98582

Source reference: /cveMetadata/cveId

Publisher severity

No explicit severity was provided.

Event
#38603 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement