What’s Vulnerable › Vulnerabilities
CVE-2026-31395: bnxt_en: fix OOB access in DBG_BUF_PRODUCER async event handler
- Severity: high (CVSS 7.1 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.1% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-04-03 · updated 2026-07-24
- Weakness: CWE-125
Description
In the Linux kernel, the following vulnerability has been resolved: bnxt_en: fix OOB access in DBG_BUF_PRODUCER async event handler The ASYNC_EVENT_CMPL_EVENT_ID_DBG_BUF_PRODUCER handler in bnxt_async_event_process() uses a firmware-supplied 'type' field directly as an index into bp->bs_trace[] without bounds validation. The 'type' field is a 16-bit value extracted from DMA-mapped completion ring memory that the NIC writes directly to host RAM. A malicious or compromised NIC can supply any value from 0 to 65535, causing an out-of-bounds access into kernel heap memory. The bnxt_bs_trace_check_wrap() call then dereferences bs_trace->magic_byte and writes to bs_trace->last_offset and bs_trace->wrapped, leading to kernel memory corruption or a crash. Fix by adding a bounds check and defining BNXT_TRACE_MAX as DBG_LOG_BUFFER_FLUSH_REQ_TYPE_ERR_QPC_TRACE + 1 to cover all currently defined firmware trace types (0x0 through 0xc).
Affected products
- Linux kernel: from 6.13 before 6.18.20; from 6.19 before 6.19.10; 7.0-rc1, 7.0-rc2, 7.0-rc3, 7.0-rc4 — fixed in 6.18.20, 6.19.10
How to fix
Upgrade to a fixed version: Linux kernel 6.18.20, 6.19.10. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/19aa416eed9e4aaf1bbe8da0f7bd9a9be31158c8
- https://git.kernel.org/stable/c/64dcbde7f8f870a4f2d9daf24ffb06f9748b5dd3
- https://git.kernel.org/stable/c/b7c7a275447c6d4bf4a36a134682e2e4e20efd4b
Get alerted when CVE-2026-31395 or the next vulnerability affects your stack