Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend sub-52-byte frames on VLAN/macvlan interface
-
ExploitPadded packet DMA-mapped shorter than descriptor length
-
ExecutionNIC reads past mapping into unmapped page
-
ImpactIOMMU fault aborts TX and hangs queue
Vulnerability Assessment
| Exploitation Conditions | Requires a host running the Linux kernel bnxt_en driver with a Broadcom NetXtreme-E NIC (e.g. BCM57412), Intel IOMMU/VT-d enabled so DMA is translated, and traffic on a VLAN or macvlan interface. The driver must transmit packets smaller than BNXT_MIN_PKT_SIZE (52 bytes) that are padded (e.g. 42-byte untagged ARP frames), AND skb->data must land within the pad bytes of a 4KB page boundary so the oversized DMA read crosses into an unmapped page. This boundary alignment is a memory-layout condition, not a reliably attacker-controlled input. The issue was exposed by commit 447cbe95ebb9, which rounded LL_RESERVED_SPACE from 48 up to 64 bytes and shifted skb->data offsets. Limiting factors: specific Broadcom hardware, IOMMU translation enabled, VLAN/macvlan configuration, small-frame traffic, and probabilistic page-boundary alignment all must coincide; outside these conditions the bug does not manifest. |
| Impact | This is a high-CVSS (7.5, A:H) but low-real-world-urgency issue. The CVSS vector (AV:N/AC:L/PR:N/UI:N) describes an availability-only impact, and all corroborating signals point to limited practical risk: EPSS is 0.21% (10th percentile), there is no CISA KEV listing, and no public exploit is identified. The vuln.today decision label is 'this_week' (not act_now/emergency), consistent with a patch-available denial-of-service fix rather than an actively exploited threat. The signals are coherent rather than conflicting, but note a metric tension: the input CVSS marks AC:L, whereas the described trigger requires skb->data to land within a few bytes of a 4KB page boundary - a memory-layout condition that is not reliably attacker-controlled, which argues for higher attack complexity than AC:L implies. Also note a tag conflict: the input Tags include 'Information Disclosure', but the CVSS confidentiality impact is C:N and the documented effect is an IOMMU DMA-read fault that hangs the TX queue (a DoS), so the severity should be read as availability, not disclosure. Overall this is a real but narrowly-scoped reliability/DoS bug affecting specific Broadcom NIC hardware under Intel IOMMU, best handled as routine patching. |
| Exploit ScenarioDerived | On a host using the Broadcom bnxt_en driver with a BCM57412 NetXtreme-E NIC and Intel IOMMU (VT-d) enabled, traffic on a VLAN or macvlan interface generates small sub-52-byte frames (such as 42-byte ARP) that the driver pads. Because the DMA mapping length is left at the original unpadded length while the hardware descriptor is programmed with the padded length, the NIC reads past the mapped region; if skb->data sits near a 4KB page boundary the read overruns into an unmapped page, triggering an IOMMU fault that aborts the message and hangs the transmit queue (NETDEV WATCHDOG timeout). No public exploit is identified; triggering is largely incidental to normal small-frame traffic rather than a reliably controllable attack. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 24, 2026
In the Linux kernel bnxt_en driver, the transmit path DMA-maps only the original unpadded length of small frames while the TX buffer descriptor tells the Broadcom NetXtreme-E NIC to read the padded length, so the hardware can DMA-read past the mapped region and into an unmapped page. Affected systems are kernels with the bnxt_en driver on Broadcom NetXtreme-E hardware (for example BCM57412), Intel IOMMU/VT-d translation enabled, and traffic on VLAN or macvlan interfaces carrying sub-52-byte frames such as 42-byte untagged ARP; the overrun only faults when skb->data sits within the pad bytes of a 4 KB page boundary, a layout condition that is not reliably attacker-controlled. The result is an IOMMU DMA Read fault (DMAR 'PTE Read access is not set'), firmware aborts and TX queue timeouts rather than any confidentiality or integrity impact; the score is high (7.5, availability-only) but real-world urgency is low, EPSS is 0.21% (10th percentile), no CISA KEV entry exists, and no public exploit has been identified at time of analysis. The trigger requires the specific hardware, IOMMU, VLAN/macvlan and small-frame combination to coincide, and the issue was exposed only after commit 447cbe95ebb9 raised LL_RESERVED_SPACE from 48 to 64 bytes.
RemediationAI
Vendor-released patches are available: update to Linux 6.6.160, 6.12.113, 6.18.57, 7.2.11 or 7.3, which contain the skb_put_padto(skb, BNXT_MIN_PKT_SIZE) rework described in the stable commits cf8530a25ae92c4493e2f22981ecb46f0b66f4c8, 2956aca14dd2977cd08bd2ccafae3beb8b84b268, fbd977e513971ccb4f0762a7f59eac500e474f89, 5213f65a9667d3dd85db2e6df8f2e0516290db34 and a51d233ccd4889aadb71dace863525cc2b00271e (patch links at git.kernel.org, record at https://nvd.nist.gov/vuln/detail/CVE-2026-99081). The supplied references document no separate workaround, so the driver fix is the complete remedy; note that the commit only pads the normal transmit path, leaving software USO segments (e.g. IPv4 frames with under 10 bytes of UDP payload) unpadded pending a follow-up patch, so hosts relying on UDP GSO/USO over bnxt_en VLAN interfaces should be tracked against that future fix. Given the prerequisites - Broadcom NetXtreme-E hardware, IOMMU translation, VLAN/macvlan, sub-52-byte frames and page-boundary alignment - patching can be scheduled in the normal weekly maintenance window rather than treated as an emergency.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The bnxt_en driver builds TX buffer descriptors for Broadcom NetXtreme-E NICs and uses the DMA API to map skb data for device read. In bnxt_start_xmit(), frames shorter than BNXT_MIN_PKT_SIZE (52 bytes) are padded, but the local 'len' variable had already been set to skb_headlen(skb) (e.g. 42) and was not updated after padding, so dma_map_single() and dma_unmap_len_set() covered only the unpadded length while txbd->tx_bd_len_flags_type encoded (len + pad) - 52 bytes. When skb->data ends within 'pad' bytes of a 4 KB boundary, the NIC's DMA engine reads across the page edge into memory that was never mapped, and with Intel IOMMU/VT-d translation active this surfaces as a DMAR DMA Read fault with an address on an exact 4 KB boundary, followed by firmware status 0x2000001, 'Abandoning msg' messages and NETDEV WATCHDOG transmit-queue timeouts. The bug became reachable in practice after commit 447cbe95ebb9 ('vlan: fix skb_under_panic and races when toggling HW VLAN offload'), which rounded LL_RESERVED_SPACE from 48 to 64 bytes and shifted skb->data offsets so small frames can land flush against page boundaries. The upstream fix replaces the manual skb_pad()/length bookkeeping with skb_put_padto(skb, BNXT_MIN_PKT_SIZE) placed before skb_shinfo(skb)->nr_frags is sampled, because padding can linearize the skb; the padding is also moved after the SW USO branch so bnxt_sw_udp_gso_xmit() does not count padding as UDP payload. No CWE identifier was supplied with this record. Software USO segments remain unpadded (e.g. IPv4 segments with under 10 bytes of UDP payload), which the commit message explicitly defers to a follow-up patch.
Know when Broadcom gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Triggering depends on skb->data landing within pad bytes of a page boundary - not reliably attacker-controlled - so AC:H; impact is a TX-queue DoS only, hence C:N/I:N/A:H.
Primary rating from Vendor (Linux).
CVSS VectorVendor: Linux
Lifecycle Timeline
4DescriptionCVE.org
In the Linux kernel, the following vulnerability has been resolved:
bnxt_en: fix DMA mapping length for padded small packets
Stefan Fleischmann reported Intel IOMMU DMA Read faults on BCM57412 NetXtreme-E NICs when transmitting packets on VLAN/macvlan interfaces:
DMAR: [DMA Read NO_PASID] Request device [18:00.0] fault addr 0xfc499000 [fault reason 0x06] PTE Read access is not set bnxt_en 0000:18:00.0 eno1np0: Abandoning msg {0xb4 0x41a} len: 0 due to firmware status: 0x2000001 ... NETDEV WATCHDOG: eno1np0 (bnxt_en): transmit queue 0 timed out
The fault address (0xfc499000) is on an exact 4KB page boundary, pointing to a DMA read buffer overrun.
In bnxt_start_xmit(), packets smaller than BNXT_MIN_PKT_SIZE (52 bytes), such as 42-byte untagged ARP frames, are padded:
if (length < BNXT_MIN_PKT_SIZE) { pad = BNXT_MIN_PKT_SIZE - length; if (skb_pad(skb, pad)) goto tx_kick_pending; length = BNXT_MIN_PKT_SIZE; }
mapping = dma_map_single(&pdev->dev, skb->data, len, DMA_TO_DEVICE); ... dma_unmap_len_set(tx_buf, len, len);
However, 'len' was initialized earlier to skb_headlen(skb) (e.g. 42 bytes) and is left unadjusted after padding. Consequently, dma_map_single() and dma_unmap_len_set() map and track only 42 bytes.
Later, the hardware TX buffer descriptor is programmed with the padded length:
txbd->tx_bd_len_flags_type = cpu_to_le32(((len + pad) << TX_BD_LEN_SHIFT) | flags | TX_BD_FLAGS_PACKET_END);
The NIC DMA engine is thus instructed to read 52 bytes from a region where only 42 bytes were DMA-mapped. If skb->data ends near the boundary of a 4KB page (within 'pad' bytes of the next page), the hardware DMA read overruns into the unmapped adjacent page, triggering an IOMMU fault.
This issue was exposed after commit 447cbe95ebb9 ("vlan: fix skb_under_panic and races when toggling HW VLAN offload") because reserving extra VLAN headroom rounded LL_RESERVED_SPACE from 48 up to 64 bytes, shifting skb->data offsets and potentially causing small frames to land right against page boundaries.
Fix this by using skb_put_padto(skb, BNXT_MIN_PKT_SIZE) in bnxt_start_xmit(), before skb_shinfo(skb)->nr_frags is sampled, because padding might linearize the skb. This ensures skb->len and skb_headlen(skb) reflect the padded size so that dma_map_single() maps the full buffer and the descriptor length is consistent. This also removes the temporary 'pad' variable and masking logic.
The padding is done after the SW USO branch, otherwise bnxt_sw_udp_gso_xmit() would account the padding as UDP payload and send it in extra segments.
Note that SW USO segments are still not padded: with IPv4, a segment carrying less than 10 bytes of UDP payload (small gso_size, or a short last segment) is sent as a frame shorter than BNXT_MIN_PKT_SIZE. This is a separate issue, left for a followup patch.
Executive ViewAI
A flaw in the Linux kernel's bnxt_en driver can cause transmit path DMA read faults on Broadcom NetXtreme-E network adapters, leading to TX queue timeouts and firmware aborts that disrupt network availability. Organizations running this hardware on affected kernels face potential service outages, but the condition is not reliably attacker-controlled and no exploitation has been observed.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
A crafted request uri-path can cause mod_proxy to forward the request to an origin server choosen by the remote user.4.4
Spring Data Commons, versions prior to 1.13 to 1.13.10, 2.0 to 2.0.5, and older unsupported versions, contain a property
The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe
In addition to the c_rehash shell command injection identified in CVE-2022-1292, further circumstances where the c_rehas
A Directory Traversal vulnerability in FileReceiveServlet in the Brocade Network Advisor versions released prior to and
The Broadcom Wi-Fi driver in the kernel in Android 4.x before 4.4.4, 5.x before 5.1.1 LMY49G, and 6.x before 2016-02-01
Server or client applications that call the SSL_check_chain() function during or after a TLS 1.3 handshake may crash due
A remote code execution vulnerability in the Broadcom Wi-Fi firmware could enable a remote attacker to execute arbitrary
Broadcom BCM43xx Wi-Fi chips allow remote attackers to execute arbitrary code via unspecified vectors, aka the "Broadpwn
VMware Aria Operations contains a command injection vulnerability (CVE-2026-22719, CVSS 8.1) that allows unauthenticated
On Broadcom BCM4355C0 Wi-Fi chips 9.44.78.27.0.1.56 and other chips, an attacker can craft a malformed RRM neighbor repo
The Broadcom BCM4325 and BCM4329 Wi-Fi chips, as used in certain Acer, Apple, Asus, Ford, HTC, Kyocera, LG, Malata, Moto
EUVD-2026-108747
GHSA-9368-hxmw-4c4j
NVD
CVE.org
EPSS
Exploit-DB