CVE-2024-40919

5.5 MEDIUM

📋 TL;DR

A NULL pointer dereference vulnerability exists in the bnxt_en driver of the Linux kernel when logging firmware messages. This occurs when a token is released due to deferred state but still referenced in log messages, potentially causing kernel crashes or denial of service. Systems using Broadcom NetXtreme-E network adapters with vulnerable Linux kernel versions are affected.

💻 Affected Systems

Products:
  • Linux kernel with bnxt_en driver
Versions: Specific kernel versions with vulnerable bnxt_en driver code before fixes were applied
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with Broadcom NetXtreme-E Ethernet controllers using the bnxt_en driver. Requires specific firmware conditions to trigger.

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial of service, requiring physical or remote console access to reboot.

🟠

Likely Case

System instability or crash when specific firmware conditions trigger the NULL pointer dereference during network operations.

🟢

If Mitigated

Minor performance impact or error logging when firmware returns HWRM_ERR_CODE_PF_UNAVAILABLE error code.

🌐 Internet-Facing: LOW - Requires local access or specific network driver conditions; not directly exploitable over network.
🏢 Internal Only: MEDIUM - Could affect servers with Broadcom NICs during normal operations, potentially causing service disruption.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: NO
Unauthenticated Exploit: ✅ No
Complexity: HIGH

Exploitation requires specific firmware conditions and local access. No known public exploits exist.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions with commits 8b65eaeae88d4e9f999e806e196dd887b90bfed9, a9b9741854a9fe9df948af49ca5514e0ed0429df, ca6660c956242623b4cfe9be2a1abc67907c44bf, cde177fa235cd36f981012504a6376315bac03c9

Vendor Advisory: https://git.kernel.org/stable/c/8b65eaeae88d4e9f999e806e196dd887b90bfed9

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution. 2. Reboot system to load new kernel. 3. Verify bnxt_en driver is loaded with patched code.

🔧 Temporary Workarounds

Disable bnxt_en driver

linux

Temporarily disable the vulnerable network driver if alternative networking is available

modprobe -r bnxt_en
echo 'blacklist bnxt_en' >> /etc/modprobe.d/blacklist.conf

🧯 If You Can't Patch

  • Ensure systems have proper backups and recovery procedures in case of crashes
  • Monitor system logs for kernel panic or NULL pointer dereference messages

🔍 How to Verify

Check if Vulnerable:

Check kernel version and verify if bnxt_en driver is loaded: lsmod | grep bnxt_en && uname -r

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is updated and check driver version: modinfo bnxt_en | grep version

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • NULL pointer dereference in dmesg
  • bnxt_en driver error logs

Network Indicators:

  • Sudden network interface drops on systems with Broadcom NICs

SIEM Query:

source="kernel" AND ("NULL pointer dereference" OR "bnxt_en" OR "kernel panic")

🔗 References

📤 Share & Export