CVE Catalog

CVE-2026-97990

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Summary

In the Linux kernel, the vdpa_sim_net module has a bug where the TX pull result is not checked before the RX copy. vringh_iov_pull_iotlb() returns a signed byte count; a failed TX pull is currently added to the unsigned byte counter and then passed as a size_t length to receive_filter() and vringh_iov_push_iotlb(). A negative error can therefore become a large length in the RX path.

Risk Assessment

Can lead to an out-of-bounds read or write in the RX path, causing a kernel crash or potential data exposure. Affects systems using vdpa_sim_net.

Recommendation

Update the Linux kernel to a version containing the fix that handles non-positive pull results before every length use. Restrict access to vdpa interfaces for untrusted users.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: vdpa_sim_net: check TX pull result before RX copy vringh_iov_pull_iotlb() returns a signed byte count. A failed TX pull is currently added to the unsigned byte counter and then passed as a size_t length to receive_filter() and vringh_iov_push_iotlb(). A negative error can therefore become a large length in the RX path. Handle non-positive pull results before every length use. Count the TX error and complete the consumed TX descriptor with zero bytes. I found this bug myself, though the patch was written with AI assistance.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS