Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2026-98582

nfc: st21nfca: validate received frame size

Description

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.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < 8934d2889ae16a7c77520e002398d0689c1ecea5affected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < d0596ee6c4b928a5c288790522a7495ee867da72affected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < f526c218a149a30f110ce434ff17e033042404b8affected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < d4008c3499dba7829bfe002edd99a8bff8ae3a7caffected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < 91be5161f37b0a2795ad6806d69be5fa74522e5caffected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < 57919d0662d8856211b794140172e51ca389f23daffected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < 7b996cc06dda54c02a5aa607bda01109f0ac51e6affected
  • 3096e25a3e40b73afd59e46f3bf8d84f919992a1 to < a653c01ce447f10c36b901646888c0330363af4faffected

Linux Linux

Default version status: affected

  • 3.16affected
  • 0 to < 3.16unaffected
  • 5.10.271 to ≤ 5.10.*unaffected
  • 5.15.222 to ≤ 5.15.*unaffected
  • 6.1.189 to ≤ 6.1.*unaffected
  • 6.6.158 to ≤ 6.6.*unaffected
  • 6.12.112 to ≤ 6.12.*unaffected
  • 6.18.55 to ≤ 6.18.*unaffected
  • 7.2.9 to ≤ 7.2.*unaffected
  • 7.3 to ≤ *unaffected

References