Skip to main content

CVE-2021-47015: Vulnerability in Linux Linux

High
VulnerabilityCVE-2021-47015cvecve-2021-47015
Published: Wed Feb 28 2024 (02/28/2024, 08:13:32 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: bnxt_en: Fix RX consumer index logic in the error path. In bnxt_rx_pkt(), the RX buffers are expected to complete in order. If the RX consumer index indicates an out of order buffer completion, it means we are hitting a hardware bug and the driver will abort all remaining RX packets and reset the RX ring. The RX consumer index that we pass to bnxt_discard_rx() is not correct. We should be passing the current index (tmp_raw_cons) instead of the old index (raw_cons). This bug can cause us to be at the wrong index when trying to abort the next RX packet. It can crash like this: #0 [ffff9bbcdf5c39a8] machine_kexec at ffffffff9b05e007 #1 [ffff9bbcdf5c3a00] __crash_kexec at ffffffff9b111232 #2 [ffff9bbcdf5c3ad0] panic at ffffffff9b07d61e #3 [ffff9bbcdf5c3b50] oops_end at ffffffff9b030978 #4 [ffff9bbcdf5c3b78] no_context at ffffffff9b06aaf0 #5 [ffff9bbcdf5c3bd8] __bad_area_nosemaphore at ffffffff9b06ae2e #6 [ffff9bbcdf5c3c28] bad_area_nosemaphore at ffffffff9b06af24 #7 [ffff9bbcdf5c3c38] __do_page_fault at ffffffff9b06b67e #8 [ffff9bbcdf5c3cb0] do_page_fault at ffffffff9b06bb12 #9 [ffff9bbcdf5c3ce0] page_fault at ffffffff9bc015c5 [exception RIP: bnxt_rx_pkt+237] RIP: ffffffffc0259cdd RSP: ffff9bbcdf5c3d98 RFLAGS: 00010213 RAX: 000000005dd8097f RBX: ffff9ba4cb11b7e0 RCX: ffffa923cf6e9000 RDX: 0000000000000fff RSI: 0000000000000627 RDI: 0000000000001000 RBP: ffff9bbcdf5c3e60 R8: 0000000000420003 R9: 000000000000020d R10: ffffa923cf6ec138 R11: ffff9bbcdf5c3e83 R12: ffff9ba4d6f928c0 R13: ffff9ba4cac28080 R14: ffff9ba4cb11b7f0 R15: ffff9ba4d5a30000 ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018

AI-Powered Analysis

AILast updated: 06/28/2025, 04:41:50 UTC

Technical Analysis

CVE-2021-47015 is a vulnerability identified in the Linux kernel's Broadcom NetXtreme (bnxt) network driver, specifically in the RX (receive) packet processing logic. The vulnerability arises from incorrect handling of the RX consumer index in the error path within the bnxt_rx_pkt() function. Normally, RX buffers are expected to complete in order, and the RX consumer index tracks this progress. However, when an out-of-order buffer completion occurs—indicative of a hardware bug—the driver attempts to abort all remaining RX packets and reset the RX ring. The flaw is that the driver passes an outdated consumer index (raw_cons) to the bnxt_discard_rx() function instead of the current index (tmp_raw_cons). This mismatch can cause the driver to reference incorrect memory locations when aborting packets, leading to a kernel crash (panic) or oops due to invalid memory access. The crash stack trace shows faults occurring during page fault handling in the kernel, triggered at the bnxt_rx_pkt function. This vulnerability is a logic error in the network driver’s error recovery path, which can cause denial of service through kernel crashes. The affected versions include multiple Linux kernel commits identified by their hashes, indicating the bug existed across several kernel versions before being fixed. There are no known exploits in the wild, and no CVSS score has been assigned yet. The vulnerability does not appear to allow privilege escalation or remote code execution directly but can cause system instability and downtime due to kernel panics triggered by network hardware anomalies or maliciously crafted network traffic that triggers the error path.

Potential Impact

For European organizations, the impact of CVE-2021-47015 primarily involves potential denial of service (DoS) conditions on Linux systems using affected Broadcom NetXtreme network drivers. This can lead to unexpected system crashes and reboots, disrupting critical services, especially in environments relying on Linux servers for networking, cloud infrastructure, or telecommunications. Organizations in sectors such as finance, healthcare, government, and telecommunications could experience operational interruptions, data unavailability, and potential cascading effects on dependent systems. Since the vulnerability is triggered by hardware bugs or out-of-order RX buffers, it may be exploited indirectly by sending malformed or high-volume network traffic to affected systems, causing instability. Although it does not directly compromise confidentiality or integrity, the availability impact can be significant in high-availability or real-time systems. The lack of known exploits reduces immediate risk, but unpatched systems remain vulnerable to accidental or deliberate triggering of the bug. European data centers and cloud providers using affected Linux kernels with Broadcom NICs could face service degradation or outages, impacting end-users and business continuity.

Mitigation Recommendations

1. Apply the official Linux kernel patches that fix the RX consumer index logic in the bnxt driver as soon as they are available and tested. 2. Identify and inventory all Linux systems using Broadcom NetXtreme network interface cards (NICs) and verify kernel versions against the affected commits. 3. Where patching is not immediately possible, consider temporarily disabling or replacing affected network interfaces to prevent triggering the bug. 4. Monitor system logs for kernel panics or oops related to bnxt_rx_pkt and RX ring resets to detect attempts to trigger the vulnerability. 5. Implement network-level protections such as rate limiting, anomaly detection, and filtering to reduce malformed or suspicious traffic that could provoke hardware bugs. 6. Coordinate with hardware vendors for firmware updates or NIC driver updates that may mitigate hardware-related RX buffer issues. 7. For critical infrastructure, deploy redundant network paths and failover mechanisms to maintain availability during potential crashes. 8. Maintain up-to-date backups and disaster recovery plans to minimize downtime impact. 9. Engage in proactive vulnerability management and testing to identify similar driver-level issues in other hardware components.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-02-27T18:42:55.953Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9821c4522896dcbddff9

Added to database: 5/21/2025, 9:08:49 AM

Last enriched: 6/28/2025, 4:41:50 AM

Last updated: 8/17/2025, 7:27:46 PM

Views: 12

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats