CVE-2026-80823nfc: st21nfca: validate ATR_REQ length against the received frame
Updated under an hour ago ()
Does this affect you?
It affects Linux. Add what you run to find out whether that includes you.
No exploitation reported and no EPSS estimate yet.
Do this next
Free account, 1 product
In the Linux kernel, the following vulnerability has been resolved: nfc: st21nfca: validate ATR_REQ length against the received frame st21nfca_tm_recv_atr_req() checks that the received ATR_REQ frame is at least ST21NFCA_ATR_REQ_MIN_SIZE and that the self-declared atr_req->length is at least sizeof(struct st21nfca_atr_req), but never checks that atr_req->length does not exceed the actual received length (skb->len). st21nfca_tm_send_atr_res() then trusts the declared length: gb_len = atr_req->length - sizeof(struct st21nfca_atr_req); ... memcpy(atr_res->gbi, atr_req->gbi, gb_len); so an RF peer that sends a short frame but sets atr_req->length larger than the frame makes gb_len exceed the general bytes actually present, and the memcpy reads out of bounds past the received skb. Those bytes are placed in the ATR_RES and sent back to the peer (kernel-memory disclosure to a proximity attacker); a larger declared length is an out-of-bounds read (DoS). Reject frames whose declared length exceeds the received length. The adjacent nfc_tm_activated() path in the same function already derives its general-bytes length from skb->len rather than the declared field. Found by 0sec (https://0sec.ai) using automated source analysis; the missing bound is evident from source. Compile-tested.
- CVSS
- Not yet scored
- Weakness (CWE)
- Not given
- Known exploited
- Not in CISA's KEV catalog
- EPSS (exploitation in the next 30 days)
- Not loaded for this CVE
- Assigned by
- Linux
- NVD analysis
- Received
- Record last updated
- Oct 19, 2026
- First seen by InfoSec Signals
- Oct 9, 2026
Affected products
Linux Linux linux:linux (from the name) | 1892bf844ea0261736bd5e75546fc996e9daeedf builds before 785df00bb3ae3206674a43284eb06dac575b5c64; 1892bf844ea0261736bd5e75546fc996e9daeedf builds before 2c1ad291f4cdc357f9527b688c6fda9c6ffa7890; from 1892bf844ea0261736bd5e75546fc996e9daeedf before dd26d30f40c43ad9cfe2f25c6ea0ead1dd51d5aa; from 1892bf844ea0261736bd5e75546fc996e9daeedf before 9635507fe82949e429b3cd938876a9917125b151; 1892bf844ea0261736bd5e75546fc996e9daeedf builds before 0f344944c506b4f02d2b098489f7268b438c369e; from 1892bf844ea0261736bd5e75546fc996e9daeedf before bfcca5f42c9aa4eadef1e5fe7bb23783d7fcc96d; 1892bf844ea0261736bd5e75546fc996e9daeedf builds before 304f5b414f4051d324b8c4a3ab0e79f7dc7e150e; from 1892bf844ea0261736bd5e75546fc996e9daeedf before f33cecf69095c43be88567fef92b180b858f7369; and 1 more ranges | CNA record |
References
- https://git.kernel.org/stable/c/785df00bb3ae3206674a43284eb06dac575b5c64
- https://git.kernel.org/stable/c/2c1ad291f4cdc357f9527b688c6fda9c6ffa7890
- https://git.kernel.org/stable/c/dd26d30f40c43ad9cfe2f25c6ea0ead1dd51d5aa
- https://git.kernel.org/stable/c/9635507fe82949e429b3cd938876a9917125b151
- https://git.kernel.org/stable/c/0f344944c506b4f02d2b098489f7268b438c369e
- https://git.kernel.org/stable/c/bfcca5f42c9aa4eadef1e5fe7bb23783d7fcc96d
- https://git.kernel.org/stable/c/304f5b414f4051d324b8c4a3ab0e79f7dc7e150e
- https://git.kernel.org/stable/c/f33cecf69095c43be88567fef92b180b858f7369
- https://git.kernel.org/stable/c/5cdcca5d62a66eda6b774110a44cba67bc1a8d1d
The CVE record on cve.org NVD's entry
The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.