CVE detail
CVE-2026-31607
In the Linux kernel, the following vulnerability has been resolved: usbip: validate number_of_packets in usbip_pack_ret_submit() When a USB/IP client receives a RET_SUBMIT response, usbip_pack_ret_submit() unconditionally overwrites urb->number_of_packets from the network PDU. This value is subsequently used as the loop bound in usbip_recv_iso() and usbip_pad_iso() to iterate over urb->iso_frame_desc[], a flexible array whose size was fixed at URB allocation time based on the *original* number_of_packets from the CMD_SUBMIT. A malicious USB/IP server can set number_of_packets in the response to a value larger than what was originally submitted, causing a heap out-of-bounds write when usbip_recv_iso() writes to urb->iso_frame_desc[i] beyond the allocated region. KASAN confirmed this with kernel 7.0.0-rc5: BUG: KASAN: slab-out-of-bounds in usbip_recv_iso+0x46a/0x640 Write of size 4 at addr ffff888106351d40 by task vhci_rx/69 The buggy address is located 0 bytes to the right of allocated 320-byte region [ffff888106351c00, ffff888106351d40) The server side (stub_rx.c) and gadget side (vudc_rx.c) already validate number_of_packets in the CMD_SUBMIT path since commits c6688ef9f297 ("usbip: fix stub_rx: harden CMD_SUBMIT path to handle malicious input") and b78d830f0049 ("usbip: fix vudc_rx: harden CMD_SUBMIT path to handle malicious input"). The server side validates against USBIP_MAX_ISO_PACKETS because no URB exists yet at that point. On the client side we have the original URB, so we can use the tighter bound: the response must not exceed the original number_of_packets. This mirrors the existing validation of actual_length against transfer_buffer_length in usbip_recv_xbuff(), which checks the response value against the original allocation size. Kelvin Mbogo's series ("usb: usbip: fix integer overflow in usbip_recv_iso()", v2) hardens the receive-side functions themselves; this patch complements that work by catching the bad value at its source -- in usbip_pack_ret_submit() before the overwrite -- and using the tighter per-URB allocation bound rather than the global USBIP_MAX_ISO_PACKETS limit. Fix this by checking rpdu->number_of_packets against urb->number_of_packets in usbip_pack_ret_submit() before the overwrite. On violation, clamp to zero so that usbip_recv_iso() and usbip_pad_iso() safely return early.
Buzz score
Why this CVE is surfacing
This all-time snapshot uses the same composite formula as Trending across a 30-year evidence window, rather than a current rolling window.
Buzz score components · mention 30.0 · diversity 18.0 · KEV 0.0 · OTX 0.0 · PoC 0.0
Why it matters now
Mention timeline
- Total mentions
- 0
- within the 30d window
- Peak daily
- 0
- highest bucket
Evidence
Source links by recency
19 source links · newest first
Information published.
vendormsrc.microsoft.comApr 29, 2026, 8:40 AM- https://access.redhat.com/errata/RHSA-2026:41236access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM - https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-31607.jsonsecurity.access.redhat.com
No excerpt available.
Vendor Advisorysecurity.access.redhat.comApr 24, 2026, 3:16 PM - https://bugzilla.redhat.com/show_bug.cgi?id=2461521bugzilla.redhat.com
No excerpt available.
Exploitbugzilla.redhat.comApr 24, 2026, 3:16 PM - https://access.redhat.com/security/cve/CVE-2026-31607access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM - https://access.redhat.com/errata/RHSA-2026:25095access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM - https://access.redhat.com/errata/RHSA-2026:24343access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM - https://access.redhat.com/errata/RHSA-2026:23224access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM - https://access.redhat.com/errata/RHSA-2026:19569access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM - https://access.redhat.com/errata/RHSA-2026:19568access.redhat.com
No excerpt available.
Vendor Advisoryaccess.redhat.comApr 24, 2026, 3:16 PM No excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PMNo excerpt available.
Vendor Advisorygit.kernel.orgApr 24, 2026, 3:16 PM
Exploit code
Public exploit repository references
Public PoC repositories are third-party, potentially unsafe artifacts. Treat their code as untrusted and use it only on authorized systems in an isolated, least-privilege environment. cvebuzz does not execute the code or verify that an exploit works.
0 repository references · best confidence N/A · max 0 stars
Related records
Similar CVEs
6 related CVEs with shared weakness or product evidence
- CVE-2026-53016CVSS 7.8 · High
In the Linux kernel, the following vulnerability has been resolved: crypto: ccp - copy IV using skcipher ivsize AF_ALG rfc3686-ctr-aes-ccp requests pass an 8-byte IV to the driv…
- CVE-2025-23319CVSS 8.1 · High
NVIDIA Triton Inference Server for Windows and Linux contains a vulnerability in the Python backend, where an attacker could cause an out-of-bounds write by sending a request. A s…
- CVE-2025-23318CVSS 8.1 · High
NVIDIA Triton Inference Server for Windows and Linux contains a vulnerability in the Python backend, where an attacker could cause an out-of-bounds write. A successful exploit of…
- CVE-2026-26955CVSS 8.8 · High
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to version 3.23.0, a malicious RDP server can trigger a heap buffer overflow in FreeRDP clients using the GD…
- CVE-2026-1837CVSS 8.7 · High
A specially-crafted file can cause libjxl's decoder to write pixel data to uninitialized unallocated memory. Soon after that data from another uninitialized unallocated region is…
- CVE-2024-24851CVSS 7.5 · High
A heap-based buffer overflow vulnerability exists in the Programming Software Connection FiBurn functionality of AutomationDirect P3-550E 1.2.10.9. A specially crafted network pac…