{
  "threat_severity" : "Moderate",
  "public_date" : "2025-12-24T00:00:00Z",
  "bugzilla" : {
    "description" : "kernel: sfc: fix crash when reading stats while NIC is resetting",
    "id" : "2425100",
    "url" : "https://bugzilla.redhat.com/show_bug.cgi?id=2425100"
  },
  "cvss3" : {
    "cvss3_base_score" : "6.4",
    "cvss3_scoring_vector" : "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:H",
    "status" : "verified"
  },
  "cwe" : "CWE-476",
  "details" : [ "In the Linux kernel, the following vulnerability has been resolved:\nsfc: fix crash when reading stats while NIC is resetting\nefx_net_stats() (.ndo_get_stats64) can be called during an ethtool\nselftest, during which time nic_data->mc_stats is NULL as the NIC has\nbeen fini'd.  In this case do not attempt to fetch the latest stats\nfrom the hardware, else we will crash on a NULL dereference:\nBUG: kernel NULL pointer dereference, address: 0000000000000038\nRIP efx_nic_update_stats\nabridged calltrace:\nefx_ef10_update_stats_pf\nefx_net_stats\ndev_get_stats\ndev_seq_printf_stats\nSkipping the read is safe, we will simply give out stale stats.\nTo ensure that the free in efx_ef10_fini_nic() does not race against\nefx_ef10_update_stats_pf(), which could cause a TOCTTOU bug, take the\nefx->stats_lock in fini_nic (it is already held across update_stats).", "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." ],
  "affected_release" : [ {
    "product_name" : "Red Hat Enterprise Linux 9",
    "release_date" : "2024-04-30T00:00:00Z",
    "advisory" : "RHSA-2024:2394",
    "cpe" : "cpe:/a:redhat:enterprise_linux:9",
    "package" : "kernel-0:5.14.0-427.13.1.el9_4"
  }, {
    "product_name" : "Red Hat Enterprise Linux 9",
    "release_date" : "2024-04-30T00:00:00Z",
    "advisory" : "RHSA-2024:2394",
    "cpe" : "cpe:/o:redhat:enterprise_linux:9",
    "package" : "kernel-0:5.14.0-427.13.1.el9_4"
  } ],
  "package_state" : [ {
    "product_name" : "Red Hat Enterprise Linux 10",
    "fix_state" : "Not affected",
    "package_name" : "kernel",
    "cpe" : "cpe:/o:redhat:enterprise_linux:10"
  }, {
    "product_name" : "Red Hat Enterprise Linux 6",
    "fix_state" : "Not affected",
    "package_name" : "kernel",
    "cpe" : "cpe:/o:redhat:enterprise_linux:6"
  }, {
    "product_name" : "Red Hat Enterprise Linux 7",
    "fix_state" : "Not affected",
    "package_name" : "kernel",
    "cpe" : "cpe:/o:redhat:enterprise_linux:7"
  }, {
    "product_name" : "Red Hat Enterprise Linux 7",
    "fix_state" : "Not affected",
    "package_name" : "kernel-rt",
    "cpe" : "cpe:/o:redhat:enterprise_linux:7"
  }, {
    "product_name" : "Red Hat Enterprise Linux 8",
    "fix_state" : "Fix deferred",
    "package_name" : "kernel",
    "cpe" : "cpe:/o:redhat:enterprise_linux:8"
  }, {
    "product_name" : "Red Hat Enterprise Linux 8",
    "fix_state" : "Fix deferred",
    "package_name" : "kernel-rt",
    "cpe" : "cpe:/o:redhat:enterprise_linux:8"
  }, {
    "product_name" : "Red Hat Enterprise Linux 9",
    "fix_state" : "Fix deferred",
    "package_name" : "kernel-rt",
    "cpe" : "cpe:/o:redhat:enterprise_linux:9"
  } ],
  "references" : [ "https://www.cve.org/CVERecord?id=CVE-2023-54156\nhttps://nvd.nist.gov/vuln/detail/CVE-2023-54156\nhttps://lore.kernel.org/linux-cve-announce/2025122428-CVE-2023-54156-832a@gregkh/T" ],
  "name" : "CVE-2023-54156",
  "mitigation" : {
    "value" : "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.\nCreate a file named `/etc/modprobe.d/disable-sfc.conf` with the following content:\n```\ninstall sfc /bin/true\nblacklist sfc\n```\nAfter creating the file, regenerate the initramfs and reboot the system for the changes to take effect:\n```bash\ndracut -f -v\nreboot\n```\nThis action may impact network connectivity if your system relies on the `sfc` driver for its network interface card.",
    "lang" : "en:us"
  },
  "csaw" : false
}