Skip to content
Fencer Intel
high 7.8

CVE-2025-21702 json

pfifo_tail_enqueue: Drop new packet when sch->limit == 0

published last yr. modified 25d ago also EUVD-2025-4797

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

Summary

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

pfifo_tail_enqueue: Drop new packet when sch->limit == 0

Expected behaviour: In case we reach scheduler's limit, pfifo_tail_enqueue() will drop a packet in scheduler's queue and decrease scheduler's qlen by one. Then, pfifo_tail_enqueue() enqueue new packet and increase scheduler's qlen by one. Finally, pfifo_tail_enqueue() return `NET_XMIT_CN` status code.

Weird behaviour: In case we set `sch->limit == 0` and trigger pfifo_tail_enqueue() on a scheduler that has no packet, the 'drop a packet' step will do nothing. This means the scheduler's qlen still has value equal 0. Then, we continue to enqueue new packet and increase scheduler's qlen by one. In summary, we can leverage pfifo_tail_enqueue() to increase qlen by one and return `NET_XMIT_CN` status code.

The problem is: Let's say we have two qdiscs: Qdisc_A and Qdisc_B. - Qdisc_A's type must have '->graft()' function to create parent/child relationship. Let's say Qdisc_A's type is `hfsc`. Enqueue packet to this qdisc will trigger `hfsc_enqueue`. - Qdisc_B's type is pfifo_head_drop. Enqueue packet to this qdisc will trigger `pfifo_tail_enqueue`. - Qdisc_B is configured to have `sch->limit == 0`. - Qdisc_A is configured to route the enqueued's packet to Qdisc_B.

Enqueue packet through Qdisc_A will lead to: - hfsc_enqueue(Qdisc_A) -> pfifo_tail_enqueue(Qdisc_B) - Qdisc_B->q.qlen += 1 - pfifo_tail_enqueue() return `NET_XMIT_CN` - hfsc_enqueue() check for `NET_XMIT_SUCCESS` and see `NET_XMIT_CN` => hfsc_enqueue() don't increase qlen of Qdisc_A.

The whole process lead to a situation where Qdisc_A->q.qlen == 0 and Qdisc_B->q.qlen == 1. Replace 'hfsc' with other type (for example: 'drr') still lead to the same problem. This violate the design where parent's qlen should equal to the sum of its childrens'qlen.

Bug impact: This issue can be used for user->kernel privilege escalation when it is reachable.

Patch / fix

  • Linux Linux 5.4.291, 5.10.235, 5.15.179, 6.1.130, 6.6.83, 6.12.14, 6.13.3, 6.14
  • linux Debian 12 6.1.133-1
  • linux Debian 14, Debian 13 6.12.15-1

debian advisories DEBIAN-CVE-2025-21702

  • linux Ubuntu 20.04 LTS 5.4.0-214.234
  • linux Ubuntu 22.04 LTS 5.15.0-138.148
  • linux Ubuntu 24.04 LTS 6.8.0-58.60
  • linux-aws Ubuntu 20.04 LTS 5.4.0-1144.154
  • linux-aws Ubuntu 22.04 LTS 5.15.0-1082.89
  • linux-aws Ubuntu 24.04 LTS 6.8.0-1027.29
  • linux-gcp Ubuntu 20.04 LTS 5.4.0-1147.156
  • linux-gcp Ubuntu 22.04 LTS 5.15.0-1081.90

ubuntu advisories UBUNTU-CVE-2025-21702

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

  • kernel RHEL 9 5.14.0-611.5.1.el9_7
  • rv RHEL 9 5.14.0-611.5.1.el9_7
  • perf RHEL 9 5.14.0-611.5.1.el9_7
  • rtla RHEL 9 5.14.0-611.5.1.el9_7
  • libperf RHEL 9 5.14.0-611.5.1.el9_7
  • kernel-rt RHEL 9 5.14.0-611.5.1.el9_7
  • kernel-64k RHEL 9 5.14.0-611.5.1.el9_7
  • kernel-core RHEL 9 5.14.0-611.5.1.el9_7

red hat advisories RHSA-2025:20518RHSA-2025:20095

  • kernel-livepatch-MICRO-6-0-RT_Update_3 Linux Micro 6.0 9-1.2
  • kernel-livepatch-MICRO-6-0-RT_Update_4 Linux Micro 6.1, Linux Micro 6.0 6-1.1
  • kernel-livepatch-MICRO-6-0-RT_Update_5 Linux Micro 6.1, Linux Micro 6.0 5-1.1
  • kernel-livepatch-MICRO-6-0-RT_Update_6 Linux Micro 6.1, Linux Micro 6.0 3-3.1
  • kernel-livepatch-MICRO-6-0-RT_Update_7 Linux Micro 6.1, Linux Micro 6.0 3-1.3
  • kernel-livepatch-MICRO-6-0-RT_Update_8 Linux Micro 6.1, Linux Micro 6.0 2-1.2
  • kernel-livepatch-MICRO-6-0-RT_Update_2 Linux Micro 6.1, Linux Micro 6.0 9-1.1
  • kernel-livepatch-MICRO-6-0_Update_6 Linux Micro 6.1, Linux Micro 6.0 3-3.1

suse advisories SUSE-SU-2025:4123-1SUSE-SU-2025:20578-1SUSE-SU-2025:20579-1SUSE-SU-2025:20580-1SUSE-SU-2025:20581-1SUSE-SU-2025:20582-1

  • kernel AlmaLinux 10 6.12.0-124.8.1.el10_1
  • rv AlmaLinux 10 6.12.0-124.8.1.el10_1
  • perf AlmaLinux 10 6.12.0-124.8.1.el10_1
  • rtla AlmaLinux 10 6.12.0-124.8.1.el10_1
  • libperf AlmaLinux 10 6.12.0-124.8.1.el10_1
  • kernel-rt AlmaLinux 10 6.12.0-124.8.1.el10_1
  • kernel-64k AlmaLinux 10 6.12.0-124.8.1.el10_1
  • kernel-core AlmaLinux 10 6.12.0-124.8.1.el10_1

almalinux advisories ALSA-2025:20095ALSA-2025:20518

  • kernel Rocky Linux 10 6.12.0-124.8.1.el10_1
  • kernel Rocky Linux 9 5.14.0-611.5.1.el9_7

rocky linux advisories RLSA-2025:20095RLSA-2025:20518

Is CVE-2025-21702 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.

Check with Fencer

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-21702 updated cvss 7.0

kernel: pfifo_tail_enqueue: Drop new packet when sch->limit == 0

  • Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more
    affected: workaround, no fix planned “Out of support scope”
  • Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 more
    affected: workaround, no fix available
  • Red Hat CodeReady Linux Builder EUS (v.9.6) libperf 5.14.0-570.154.1.el9_6, kernel-debuginfo-common-s390x 5.14.0-570.154.1.el9_6, kernel-debuginfo-common-x86_64 5.14.0-570.154.1.el9_6, kernel-debuginfo-common-aarch64 5.14.0-570.154.1.el9_6, kernel-debuginfo-common-ppc64le 5.14.0-570.154.1.el9_6
    fixed: vendor fix RHSA-2026:94438
  • Red Hat Enterprise Linux AppStream (v. 9) rv 5.14.0-611.5.1.el9_7, perf 5.14.0-611.5.1.el9_7, rtla 5.14.0-611.5.1.el9_7, python3-perf 5.14.0-611.5.1.el9_7, kernel-devel-matched 5.14.0-611.5.1.el9_7, kernel-64k-devel-matched 5.14.0-611.5.1.el9_7, +7 more
    fixed: vendor fix RHSA-2025:20518
  • Red Hat Enterprise Linux AppStream (v. 10) rv 6.12.0-124.8.1.el10_1, perf 6.12.0-124.8.1.el10_1, rtla 6.12.0-124.8.1.el10_1, python3-perf 6.12.0-124.8.1.el10_1, kernel-devel-matched 6.12.0-124.8.1.el10_1, kernel-64k-devel-matched 6.12.0-124.8.1.el10_1, +7 more
    fixed: vendor fix RHSA-2025:20095
  • Red Hat Enterprise Linux AppStream EUS (v.9.6) rv 5.14.0-570.154.1.el9_6, perf 5.14.0-570.154.1.el9_6, rtla 5.14.0-570.154.1.el9_6, python3-perf 5.14.0-570.154.1.el9_6, kernel-devel-matched 5.14.0-570.154.1.el9_6, kernel-64k-devel-matched 5.14.0-570.154.1.el9_6, +7 more
    fixed: vendor fix RHSA-2026:94438
  • Red Hat Enterprise Linux BaseOS (v. 9) kernel 5.14.0-611.5.1.el9_7, kernel-64k 5.14.0-611.5.1.el9_7, kernel-core 5.14.0-611.5.1.el9_7, kernel-tools 5.14.0-611.5.1.el9_7, kernel-modules 5.14.0-611.5.1.el9_7, kernel-64k-core 5.14.0-611.5.1.el9_7, +27 more
    fixed: vendor fix RHSA-2025:20518
  • Red Hat Enterprise Linux BaseOS (v. 10) kernel 6.12.0-124.8.1.el10_1, kernel-64k 6.12.0-124.8.1.el10_1, kernel-core 6.12.0-124.8.1.el10_1, kernel-tools 6.12.0-124.8.1.el10_1, kernel-modules 6.12.0-124.8.1.el10_1, kernel-64k-core 6.12.0-124.8.1.el10_1, +28 more
    fixed: vendor fix RHSA-2025:20095
show 10 more
  • Red Hat Enterprise Linux BaseOS EUS (v.9.6) kernel 5.14.0-570.154.1.el9_6, kernel-64k 5.14.0-570.154.1.el9_6, kernel-core 5.14.0-570.154.1.el9_6, kernel-tools 5.14.0-570.154.1.el9_6, kernel-modules 5.14.0-570.154.1.el9_6, kernel-64k-core 5.14.0-570.154.1.el9_6, +27 more
    fixed: vendor fix RHSA-2026:94438
  • Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) libperf 5.14.0-611.5.1.el9_7, kernel-debuginfo-common-s390x 5.14.0-611.5.1.el9_7, kernel-debuginfo-common-x86_64 5.14.0-611.5.1.el9_7, kernel-debuginfo-common-aarch64 5.14.0-611.5.1.el9_7, kernel-debuginfo-common-ppc64le 5.14.0-611.5.1.el9_7
    fixed: vendor fix RHSA-2025:20518
  • Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) libperf 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-s390x 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-x86_64 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-aarch64 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-ppc64le 6.12.0-124.8.1.el10_1
    fixed: vendor fix RHSA-2025:20095
  • Red Hat Enterprise Linux Real Time (v. 9) kernel-rt 5.14.0-611.5.1.el9_7, kernel-rt-64k 5.14.0-611.5.1.el9_7, kernel-rt-core 5.14.0-611.5.1.el9_7, kernel-rt-modules 5.14.0-611.5.1.el9_7, kernel-rt-64k-core 5.14.0-611.5.1.el9_7, kernel-rt-debug-core 5.14.0-611.5.1.el9_7, +14 more
    fixed: vendor fix RHSA-2025:20518
  • Red Hat Enterprise Linux Real Time (v. 10) kernel-rt 6.12.0-124.8.1.el10_1, kernel-rt-64k 6.12.0-124.8.1.el10_1, kernel-rt-core 6.12.0-124.8.1.el10_1, kernel-rt-modules 6.12.0-124.8.1.el10_1, kernel-rt-64k-core 6.12.0-124.8.1.el10_1, kernel-rt-debug-core 6.12.0-124.8.1.el10_1, +14 more
    fixed: vendor fix RHSA-2025:20095
  • Red Hat Enterprise Linux Real Time EUS (v.9.6) kernel-rt 5.14.0-570.154.1.el9_6, kernel-rt-64k 5.14.0-570.154.1.el9_6, kernel-rt-core 5.14.0-570.154.1.el9_6, kernel-rt-modules 5.14.0-570.154.1.el9_6, kernel-rt-64k-core 5.14.0-570.154.1.el9_6, kernel-rt-debug-core 5.14.0-570.154.1.el9_6, +14 more
    fixed: vendor fix RHSA-2026:94438
  • Red Hat Enterprise Linux Real Time for NFV (v. 9) kernel-rt 5.14.0-611.5.1.el9_7, kernel-rt-core 5.14.0-611.5.1.el9_7, kernel-rt-modules 5.14.0-611.5.1.el9_7, kernel-rt-debug-core 5.14.0-611.5.1.el9_7, kernel-rt-modules-core 5.14.0-611.5.1.el9_7, kernel-rt-debug-modules 5.14.0-611.5.1.el9_7, +4 more
    fixed: vendor fix RHSA-2025:20518
  • Red Hat Enterprise Linux Real Time for NFV (v. 10) kernel-rt 6.12.0-124.8.1.el10_1, kernel-rt-core 6.12.0-124.8.1.el10_1, kernel-rt-modules 6.12.0-124.8.1.el10_1, kernel-rt-debug-core 6.12.0-124.8.1.el10_1, kernel-rt-modules-core 6.12.0-124.8.1.el10_1, kernel-rt-debug-modules 6.12.0-124.8.1.el10_1, +4 more
    fixed: vendor fix RHSA-2025:20095
  • Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6) kernel-rt 5.14.0-570.154.1.el9_6, kernel-rt-kvm 5.14.0-570.154.1.el9_6, kernel-rt-core 5.14.0-570.154.1.el9_6, kernel-rt-modules 5.14.0-570.154.1.el9_6, kernel-rt-debug-kvm 5.14.0-570.154.1.el9_6, kernel-rt-debug-core 5.14.0-570.154.1.el9_6, +6 more
    fixed: vendor fix RHSA-2026:94438
  • Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 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 ICSA-26-295-11 updated cvss 7.8

Siemens SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP

  • Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) >= 3.1.7 Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) >= 3.1.7 Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0) >= 3.1.7 Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AC0) >= 3.1.7 Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP (6AG1518-4AX00-4AC0) >= 3.1.7
    affected: mitigation, no fix available

Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf

cisa ICSA-26-295-16 updated cvss 7.8

Siemens SIMATIC S7-1500 TM MFP

  • Siemens SIMATIC S7-1500 TM MFP - GNU/Linux subsystem
    affected: mitigation, no fix available

Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf

cisa ICSA-26-209-04 updated cvss 7.8

Siemens SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP

  • Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) >= 3.1.6 Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) >= 3.1.6 Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0) >= 3.1.6 Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AC0) >= 3.1.6 Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP (6AG1518-4AX00-4AC0) >= 3.1.6
    affected: mitigation, no fix available

Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf

cisa ICSA-25-162-05 updated cvss 7.8

Siemens SIMATIC S7-1500 CPU family

  • Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) >= 3.1.5 Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) >= 3.1.5 Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0) >= 3.1.5 Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AC0) >= 3.1.5 Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP (6AG1518-4AX00-4AC0) >= 3.1.5
    affected: mitigation, no fix available

Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf

Exploit prediction

0.28% chance of exploitation in the next 30 days, higher than 20% of all scored CVEs (FIRST EPSS, 2026-11-09).

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 7.0 CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

Affected products

  • Linux Linux
  • Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP
  • Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP
  • Siemens SIMATIC S7-1500 TM MFP - GNU/Linux subsystem
  • Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP

Classification

Technology feeds

References

Sources

Fencer Intel 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.