CVE-2026-31395 PUBLISHED

bnxt_en: fix OOB access in DBG_BUF_PRODUCER async event handler

Assigner: Linux
Reserved: 09.03.2026 Published: 03.04.2026 Updated: 03.04.2026

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).

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 84fcd9449fd7882ddfb05ba64d75f9be2d29b2e9 to 19aa416eed9e4aaf1bbe8da0f7bd9a9be31158c8 (excl.)
  • affected from 84fcd9449fd7882ddfb05ba64d75f9be2d29b2e9 to b7c7a275447c6d4bf4a36a134682e2e4e20efd4b (excl.)
  • affected from 84fcd9449fd7882ddfb05ba64d75f9be2d29b2e9 to 64dcbde7f8f870a4f2d9daf24ffb06f9748b5dd3 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.13 is affected
  • unaffected from 0 to 6.13 (excl.)
  • unaffected from 6.18.20 to 6.18.* (incl.)
  • unaffected from 6.19.10 to 6.19.* (incl.)
  • unaffected from 7.0-rc5 to * (incl.)

References