Skip to main content
← All vulnerabilities
CVE-2026-98575

nfc: pn533: fix OOB read in pn533_acr122_is_rx_frame_valid()

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.112, and 2 more
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: nfc: pn533: fix OOB read in pn533_acr122_is_rx_frame_valid() frame->ccid.datalen is read directly from the USB response frame and used, unchecked, as an index into frame->data[]. A malicious or malfunctioning device can set this field to an arbitrary value, causing the driver to read far outside the received buffer. Bound ccid.datalen against the maximum possible ACR122 frame size before using it. This replaces the existing datalen == 0 check, since datalen < 2 already covers that case and additionally rejects datalen == 1, which would still underflow the "datalen - 2" offset used below.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in 8db3b1e012a8b25078dfa1efabe3d0cd2916dcba; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in 74b3fbc60907ee97e3af3249091f57351b53a6d6; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in 8a0f1bb790d964893db7fc59febda9a534db07b3; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in ea82b7576793219fa10a8b545f8338998b2a9ce2; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in 72b8b2126e854d6756a1aa4bdc66d7457b832294; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in e72cbedc4596e808d22dd2b9fff666ece76f8dd6; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in 2450a388367231fb7dd798538f393af227c00c4d; From 9815c7cf22daceabfb919ddcd6f2c80e049c1fbc · fixed in b61732f47316d45f27706db7812950145d3327b5

  • Linux Linux

    4.7

  • KernelLinux

    From 4.7.0 · fixed in 5.10.271; From 5.11.0 · fixed in 5.15.222; From 5.16.0 · fixed in 6.1.189; From 6.2.0 · fixed in 6.6.158; From 6.7.0 · fixed in 6.12.112; From 6.13.0 · fixed in 6.18.55; From 6.19.0 · fixed in 7.2.9

References 8

git.kernel.org