Skip to content
Fencer Vulns
high 7.8

CVE-2025-38001 json

net_sched: hfsc: Address reentrant enqueue adding class to eltree twice

published 2025-06-06 17 mo ago modified 2026-10-15 24 d ago also EUVD-2025-17306

cvss
7.8
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.6%
EPSS 0.6% chance of exploitation in 30 days, percentile 46%
public exploits
0
none known

Summary

In the Linux kernel, the following vulnerability has been resolved:

net_sched: hfsc: Address reentrant enqueue adding class to eltree twice

Savino says: "We are writing to report that this recent patch (141d34391abbb315d68556b7c67ad97885407547) [1] can be bypassed, and a UAF can still occur when HFSC is utilized with NETEM.

The patch only checks the cl->cl_nactive field to determine whether it is the first insertion or not [2], but this field is only incremented by init_vf [3].

By using HFSC_RSC (which uses init_ed) [4], it is possible to bypass the check and insert the class twice in the eltree. Under normal conditions, this would lead to an infinite loop in hfsc_dequeue for the reasons we already explained in this report [5].

However, if TBF is added as root qdisc and it is configured with a very low rate, it can be utilized to prevent packets from being dequeued. This behavior can be exploited to perform subsequent insertions in the HFSC eltree and cause a UAF."

To fix both the UAF and the infinite loop, with netem as an hfsc child, check explicitly in hfsc_enqueue whether the class is already in the eltree whenever the HFSC_RSC flag is set.

[1] https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=141d34391abbb315d68556b7c67ad97885407547 [2] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L1572 [3] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L677 [4] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L1574 [5] https://lore.kernel.org/netdev/8DuRWwfqjoRDLDmBMlIfbrsZg9Gx50DHJc1ilxsEBNe2D6NMoigR_eIRIG0LOjMc3r10nUUZtArXx4oZBIdUfZQrwjcQhdinnMis_0G7VEk=@willsroot.io/T/#u

Patch / fix

  • Linux Linux 5.4.294, 5.10.238, 5.15.185, 6.1.141, 6.6.93, 6.12.32, 6.14.10, 6.15.1, 6.16
  • linux Debian 12 6.1.147-1
  • linux Debian 14, Debian 13 6.12.32-1

debian advisories DEBIAN-CVE-2025-38001

  • linux Ubuntu 22.04 LTS 5.15.0-143.153
  • linux Ubuntu 24.04 LTS 6.8.0-63.66
  • linux-aws Ubuntu 22.04 LTS 5.15.0-1087.94
  • linux-aws Ubuntu 24.04 LTS 6.8.0-1031.33
  • linux-gcp Ubuntu 22.04 LTS 5.15.0-1086.95
  • linux-gcp Ubuntu 24.04 LTS 6.8.0-1032.34
  • linux-gke Ubuntu 22.04 LTS 5.15.0-1084.90
  • linux-gke Ubuntu 24.04 LTS 6.8.0-1027.31

ubuntu advisories UBUNTU-CVE-2025-38001

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • kpatch-patch-4_18_0-553_72_1 RHEL 8 1-2.el8_10
  • kpatch-patch-4_18_0-553_16_1 RHEL 8 1-10.el8_10
  • kpatch-patch-4_18_0-553_30_1 RHEL 8 1-9.el8_10
  • kpatch-patch-4_18_0-553_40_1 RHEL 8 1-7.el8_10
  • kpatch-patch-4_18_0-553_53_1 RHEL 8 1-5.el8_10
  • kpatch-patch-5_14_0-570_17_1 RHEL 9 1-10.el9_6
  • kpatch-patch-4_18_0-477_97_1 RHEL 8.8 E4S 1-5.el8_8
  • kpatch-patch-4_18_0-477_67_1 RHEL 8.8 E4S 1-11.el8_8

red hat advisories RHSA-2025:16582RHSA-2025:16583RHSA-2025:16580RHSA-2025:16540RHSA-2025:16541RHSA-2025:16538

  • kernel-livepatch-MICRO-6-0-RT_Update_2 Linux Micro 6.1, Linux Micro 6.0 11-1.1
  • kernel-livepatch-MICRO-6-0_Update_2 Linux Micro 6.1, Linux Micro 6.0 11-1.1
  • kernel-livepatch-MICRO-6-0_Update_5 Linux Micro 6.1, Linux Micro 6.0 7-1.2
  • kernel-livepatch-MICRO-6-0-RT_Update_9 Linux Micro 6.0 3-1.2
  • kernel-livepatch-SLE15-SP6_Update_9 SLE Live Patching 15 SP6 6-150600.2.1
  • kernel-livepatch-SLE15-SP6_Update_5 SLE Live Patching 15 SP6 15-150600.2.1
  • kernel-livepatch-SLE15-SP6_Update_3 SLE Live Patching 15 SP6 20-150600.2.1
  • kernel-livepatch-SLE15-SP7_Update_1 SLE Live Patching 15 SP7 3-150700.2.1

suse advisories SUSE-SU-2025:03235-1SUSE-SU-2025:03226-1SUSE-SU-2025:03223-1SUSE-SU-2025:03222-1SUSE-SU-2025:03217-1SUSE-SU-2025:03215-1

  • kernel Azure Linux 3.0 6.6.96.1-1

azure linux advisories AZL-63681

Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2025-38001 updated cvss 7.0

kernel: net_sched: hfsc: Address reentrant enqueue adding class to eltree twice

  • Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +82 more Red Hat Enterprise Linux 10 kernel
    affected: workaround, no fix available “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.”
  • Red Hat Enterprise Linux AppStream E4S (v.9.0) perf 5.14.0-70.144.1.el9_0, kernel-devel-matched 5.14.0-70.144.1.el9_0, kernel-debug-devel-matched 5.14.0-70.144.1.el9_0, kernel-debuginfo-common-s390x 5.14.0-70.144.1.el9_0, kernel-zfcpdump-devel-matched 5.14.0-70.144.1.el9_0, kernel-debuginfo-common-x86_64 5.14.0-70.144.1.el9_0, +2 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14744
  • Red Hat Enterprise Linux AppStream E4S (v.9.2) perf 5.14.0-284.128.1.el9_2, rtla 5.14.0-284.128.1.el9_2, kernel-devel-matched 5.14.0-284.128.1.el9_2, kernel-64k-devel-matched 5.14.0-284.128.1.el9_2, kernel-debug-devel-matched 5.14.0-284.128.1.el9_2, kernel-debuginfo-common-s390x 5.14.0-284.128.1.el9_2, +5 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:12209
  • Red Hat Enterprise Linux BaseOS (v. 8) kpatch-patch-4_18_0-553_30_1 1-9.el8_10, kpatch-patch-4_18_0-553_40_1 1-7.el8_10, kpatch-patch-4_18_0-553_53_1 1-5.el8_10, kpatch-patch-4_18_0-553_72_1 1-2.el8_10, kpatch-patch-4_18_0-553_16_1 1-10.el8_10
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:16582
  • Red Hat Enterprise Linux BaseOS (v. 9) kpatch-patch-5_14_0-570_17_1 1-10.el9_6
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:16538
  • Red Hat Enterprise Linux BaseOS AUS (v. 8.2) perf 4.18.0-193.165.1.el8_2, kernel 4.18.0-193.165.1.el8_2, bpftool 4.18.0-193.165.1.el8_2, kernel-core 4.18.0-193.165.1.el8_2, kernel-tools 4.18.0-193.165.1.el8_2, python3-perf 4.18.0-193.165.1.el8_2, +8 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14742
  • Red Hat Enterprise Linux BaseOS AUS (v.8.4) perf 4.18.0-305.170.1.el8_4, kernel 4.18.0-305.170.1.el8_4, bpftool 4.18.0-305.170.1.el8_4, kernel-core 4.18.0-305.170.1.el8_4, kernel-tools 4.18.0-305.170.1.el8_4, python3-perf 4.18.0-305.170.1.el8_4, +8 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:15035
  • Red Hat Enterprise Linux BaseOS AUS (v.8.6) perf 4.18.0-372.158.1.el8_6, kernel 4.18.0-372.158.1.el8_6, bpftool 4.18.0-372.158.1.el8_6, kernel-core 4.18.0-372.158.1.el8_6, kernel-tools 4.18.0-372.158.1.el8_6, python3-perf 4.18.0-372.158.1.el8_6, +8 more Red Hat Enterprise Linux BaseOS E4S (v.8.6) perf 4.18.0-372.158.1.el8_6, kernel 4.18.0-372.158.1.el8_6, bpftool 4.18.0-372.158.1.el8_6, kernel-core 4.18.0-372.158.1.el8_6, kernel-tools 4.18.0-372.158.1.el8_6, python3-perf 4.18.0-372.158.1.el8_6, +19 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14692
show 9 more
  • Red Hat Enterprise Linux BaseOS E4S (v.8.8) perf 4.18.0-477.107.1.el8_8, kernel 4.18.0-477.107.1.el8_8, bpftool 4.18.0-477.107.1.el8_8, kernel-core 4.18.0-477.107.1.el8_8, kernel-tools 4.18.0-477.107.1.el8_8, python3-perf 4.18.0-477.107.1.el8_8, +13 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14511
  • Red Hat Enterprise Linux BaseOS E4S (v.9.0) kernel 5.14.0-70.144.1.el9_0, bpftool 5.14.0-70.144.1.el9_0, kernel-core 5.14.0-70.144.1.el9_0, kernel-tools 5.14.0-70.144.1.el9_0, python3-perf 5.14.0-70.144.1.el9_0, kernel-modules 5.14.0-70.144.1.el9_0, +18 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14744
  • Red Hat Enterprise Linux BaseOS E4S (v.9.2) bpftool 7.0.0-284.128.1.el9_2, kernel 5.14.0-284.128.1.el9_2, kernel-64k 5.14.0-284.128.1.el9_2, kernel-core 5.14.0-284.128.1.el9_2, kernel-tools 5.14.0-284.128.1.el9_2, python3-perf 5.14.0-284.128.1.el9_2, +32 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:12209
  • Red Hat Enterprise Linux BaseOS EUS (v.9.4) kpatch-patch-5_14_0-427_68_2 1-7.el9_4, kpatch-patch-5_14_0-427_84_1 1-2.el9_4, kpatch-patch-5_14_0-427_31_1 1-14.el9_4, kpatch-patch-5_14_0-427_44_1 1-12.el9_4, kpatch-patch-5_14_0-427_55_1 1-10.el9_4
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:16540
  • Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.4) perf 4.18.0-305.170.1.el8_4, kernel 4.18.0-305.170.1.el8_4, bpftool 4.18.0-305.170.1.el8_4, kernel-core 4.18.0-305.170.1.el8_4, kernel-tools 4.18.0-305.170.1.el8_4, python3-perf 4.18.0-305.170.1.el8_4, +8 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:15035
  • Red Hat Enterprise Linux BaseOS TUS (v.8.6) perf 4.18.0-372.158.1.el8_6, kernel 4.18.0-372.158.1.el8_6, bpftool 4.18.0-372.158.1.el8_6, kernel-core 4.18.0-372.158.1.el8_6, kernel-tools 4.18.0-372.158.1.el8_6, python3-perf 4.18.0-372.158.1.el8_6, +8 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14692
  • Red Hat Enterprise Linux BaseOS TUS (v.8.8) perf 4.18.0-477.107.1.el8_8, kernel 4.18.0-477.107.1.el8_8, bpftool 4.18.0-477.107.1.el8_8, kernel-core 4.18.0-477.107.1.el8_8, kernel-tools 4.18.0-477.107.1.el8_8, python3-perf 4.18.0-477.107.1.el8_8, +8 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:14511
  • Red Hat Enterprise Linux Real Time E4S (v.9.2) kernel-rt 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-core 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-modules 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-debug-core 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-modules-core 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-debug-modules 5.14.0-284.128.1.rt14.413.el9_2, +4 more Red Hat Enterprise Linux Real Time for NFV E4S (v.9.2) kernel-rt 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-kvm 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-core 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-modules 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-debug-kvm 5.14.0-284.128.1.rt14.413.el9_2, kernel-rt-debug-core 5.14.0-284.128.1.rt14.413.el9_2, +6 more
    fixed: vendor fix “To mitigate this issue, prevent module sch_hfsc from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2025:12311
  • Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
total
Assessed
24 d ago

Exploit prediction

0.56% chance of exploitation in the next 30 days, higher than 46% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
CNA 3.1 7.8 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
NVD 3.1 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Affected products

  • Linux Linux

Classification

Weakness
  • CWE-835 Loop with Unreachable Exit Condition
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.