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
- git.kernel.org/stable/c/e5bee633cc276410337d54b99f77fbc1ad8801e5 commit
- git.kernel.org/stable/c/6672e6c00810056acaac019fe26cdc26fee8a66c commit
- git.kernel.org/stable/c/2c928b3a0b04a431ffcd6c8b7d88a267124a3a28 commit
- git.kernel.org/stable/c/a0ec22fa20b252edbe070a9de8501eef63c17ef5 commit
- git.kernel.org/stable/c/295f7c579b07b5b7cf2dffe485f71cc2f27647cb commit
- git.kernel.org/stable/c/2f2190ce4ca972051cac6a8d7937448f8cb9673c commit
- git.kernel.org/stable/c/4e38eaaabfb7fffbb371a51150203e19eee5d70e commit
- git.kernel.org/stable/c/39ed887b1dd2d6b720f87e86692ac3006cc111c8 commit
- git.kernel.org/stable/c/ac9fe7dd8e730a103ae4481147395cc73492d786 commit
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 kernelaffected: 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 morefixed: 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 morefixed: 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_10fixed: 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_6fixed: 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 morefixed: 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 morefixed: 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 morefixed: 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 moreshow fewer
-
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 morefixed: 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 morefixed: 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 morefixed: 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_4fixed: 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 morefixed: 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 morefixed: 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 morefixed: 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 morefixed: 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 morenot 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
-
git.kernel.org
/stable/c/e5bee633cc276410337d54b99f77fbc1ad8801e5
patch
-
git.kernel.org
/stable/c/6672e6c00810056acaac019fe26cdc26fee8a66c
patch
-
git.kernel.org
/stable/c/2c928b3a0b04a431ffcd6c8b7d88a267124a3a28
patch
-
git.kernel.org
/stable/c/a0ec22fa20b252edbe070a9de8501eef63c17ef5
patch
-
git.kernel.org
/stable/c/295f7c579b07b5b7cf2dffe485f71cc2f27647cb
patch
-
git.kernel.org
/stable/c/2f2190ce4ca972051cac6a8d7937448f8cb9673c
patch
-
git.kernel.org
/stable/c/4e38eaaabfb7fffbb371a51150203e19eee5d70e
patch
-
git.kernel.org
/stable/c/39ed887b1dd2d6b720f87e86692ac3006cc111c8
patch
-
git.kernel.org
/stable/c/ac9fe7dd8e730a103ae4481147395cc73492d786
patch
-
syst3mfailure.io
/rbtree-family-drama/
third-party-advisory
-
lists.debian.org
/debian-lts-announce/2025/10/msg00008.html
third-party-advisory
-
lists.debian.org
/debian-lts-announce/2025/10/msg00007.html
third-party-advisory
Sources
- CVE List CVE-2025-38001
- NVD CVE-2025-38001
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.