Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2026-98481

nfc: port100: reject frames whose declared length exceeds the received data

Description

In the Linux kernel, the following vulnerability has been resolved: nfc: port100: reject frames whose declared length exceeds the received data port100_recv_response() passes the URB transfer buffer to port100_rx_frame_is_valid(), which checksums le16_to_cpu(frame->datalen) bytes of frame->data. datalen is a 16-bit field supplied by the device and is never checked against the number of bytes actually received (urb->actual_length), so a device reporting a datalen larger than the received frame makes port100_data_checksum() read out of bounds past the transfer buffer. Reject a response whose declared frame size does not fit the received length before validating it. Found by 0sec (https://0sec.ai) using automated source analysis; the missing bound is evident from source. Compile-tested.

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

  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < 0d482995f0cdd0302450aa300c684c642d8ab31faffected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < 9e8df087826b9999d1b83b06f5d85675d5a69c9eaffected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < db66a30588630c7de30ef033f00daddef69f6ad9affected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < 144ad477c381e2c592b64898d04ab4ce03b32861affected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < e4da1452e10c6472a4bac48dc2f6a35fff1fcd69affected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < 14b1467cfc6630583650f33538174c5a1ec685abaffected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < 035056e07ea65be670284246d9bc62f2f00ff4a3affected
  • 562d4d59b8a1d5f3ca75115d6ac10c7b7bc68c06 to < 092c6a605cbd6414ef499834c2e0da69c2c3388eaffected

Linux Linux

Default version status: affected

  • 3.13affected
  • 0 to < 3.13unaffected
  • 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