CVE-2023-54156

Description

A flaw was identified in the sfc network driver within the Linux kernel where a NULL pointer dereference may occur when reading network statistics during a NIC reset. Specifically, the function efx_net_stats() (used as .ndo_get_stats64 for ethtool) can be invoked while the NIC’s internal data structures have already been torn down. In such a situation, nic_data->mc_stats may be NULL, leading to an unprotected dereference and a kernel crash (BUG) when accessing this pointer. The root cause is the lack of protection against accessing stale or freed data during concurrent operations involving NIC reset and statistics queries.

Mitigation

To mitigate this issue, prevent the `sfc` kernel module from loading if it is not required for your network hardware. This can be achieved by creating a modprobe configuration file.

Create a file named `/etc/modprobe.d/disable-sfc.conf` with the following content:

install sfc /bin/true
blacklist sfc

After creating the file, regenerate the initramfs and reboot the system for the changes to take effect:

bash
dracut -f -v
reboot
This action may impact network connectivity if your system relies on the `sfc` driver for its network interface card.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score6.4N/A7.8
Attack VectorNetworkN/ALocal
Attack ComplexityHighN/ALow
Privileges RequiredLowN/ALow
User InteractionNoneN/ANone
ScopeUnchangedN/AUnchanged
ConfidentialityLowN/AHigh
Integrity ImpactLowN/AHigh
Availability ImpactHighN/AHigh

Vector

Red Hat: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:H

cve.org: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Understanding the Weakness (CWE)

Availability

Technical Impact: DoS: Crash, Exit, or Restart

NULL pointer dereferences usually result in the failure of the process unless exception handling (on some platforms) is available and implemented. Even when exception handling is being used, it can still be very difficult to return the software to a safe state of operation.

Integrity,Confidentiality

Technical Impact: Execute Unauthorized Code or Commands; Read Memory; Modify Memory

In rare circumstances, when NULL is equivalent to the 0x0 memory address and privileged code can access it, then writing or reading memory is possible, which may lead to code execution.

Frequently Asked Questions

Want to get errata notifications? Sign up here.