CVE-2026-31622 NFC: digital: Bounds check NFC-A cascade depth in SDD response handler
A malicious NFC peer can trigger a heap buffer overflow in the Linux kernel NFC driver, potentially leading to code execution or privilege escalation.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-31622?
CVE-2026-31622 is a high-severity memory corruption vulnerability in Linux kernel, published on 24 Apr 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
NFC: digital: Bounds check NFC-A cascade depth in SDD response handler
The NFC-A anti-collision cascade in digital_in_recv_sdd_res() appends 3 or 4 bytes to target->nfcid1 on each round, but the number of cascade rounds is controlled entirely by the peer device. The peer sets the cascade tag in the SDD_RES (deciding 3 vs 4 bytes) and the cascade-incomplete bit in the SEL_RES (deciding whether another round follows).
ISO 14443-3 limits NFC-A to three cascade levels and target->nfcid1 is sized accordingly (NFC_NFCID1_MAXSIZE = 10), but nothing in the driver actually enforces this. This means a malicious peer can keep the cascade running, writing past the heap-allocated nfc_target with each round.
Fix this by rejecting the response when the accumulated UID would exceed the buffer.
Commit e329e71013c9 ("NFC: nci: Bounds check struct nfc_target arrays") fixed similar missing checks against the same field on the NCI path.
Weakness: CWE-120
Which versions are affected by CVE-2026-31622?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2026-31622?
Apply the vendor's patch.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2026-31622 being exploited?
There is no known exploitation of CVE-2026-31622 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as AZL-83876, BELL-CVE-2026-31622, DEBIAN-CVE-2026-31622, GHSA-3r85-565g-4jhq, ROOT-OS-DEBIAN-11-CVE-2026-31622, ROOT-OS-DEBIAN-12-CVE-2026-31622 and 3 more.