CVE-2023-54037
NULL Pointer Dereference in Linux Kernel ice Driver During Reload
Publication date: 2025-12-24
Last updated on: 2025-12-24
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| intel | ice | * |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability in the Linux kernel's ice driver involves a NULL pointer dereference during a device reload. When the ethtool utility is called during the reload process, it can cause a kernel crash (call trace) because the Virtual Station Interface (VSI) is not configured temporarily, although the network device remains active. The issue arises from missing synchronization (rtnl lock) during VSI deconfiguration and configuration, and missing checks for certain ring parameters in ethtool operations. The fix involves adding proper locking, resetting queue vectors, and adding checks to prevent accessing uninitialized pointers.
How can this vulnerability impact me? :
This vulnerability can cause the Linux kernel to crash due to a NULL pointer dereference when performing certain network device reload operations with ethtool. This can lead to system instability, potential downtime, and disruption of network services on affected systems using the ice driver.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by observing kernel call traces or NULL pointer dereference errors related to the ice driver during ethtool operations. Specifically, running commands such as 'watch -n 0.1 -d "ethtool -g <interface>"' and 'devlink dev reload <device> action driver_reinit' can reproduce the issue and help detect it.
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation involves applying the fix that adds rtnl lock for VSI deconfig and config, sets num_q_vectors to 0 after freeing, and adds checks for tx/rx_rings in ring related ethtool operations. Until the fix is applied, avoid running ethtool commands during device reloads to prevent triggering the NULL pointer dereference.