CVE-2026-23270

Summary

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

net/sched: Only allow act_ct to bind to clsact/ingress qdiscs and shared blocks

As Paolo said earlier [1]:

"Since the blamed commit below, classify can return TC_ACT_CONSUMED while the current skb being held by the defragmentation engine. As reported by GangMin Kim, if such packet is that may cause a UaF when the defrag engine later on tries to tuch again such packet."

act_ct was never meant to be used in the egress path, however some users are attaching it to egress today [2]. Attempting to reach a middle ground, we noticed that, while most qdiscs are not handling TC_ACT_CONSUMED, clsact/ingress qdiscs are. With that in mind, we address the issue by only allowing act_ct to bind to clsact/ingress qdiscs and shared blocks. That way it's still possible to attach act_ct to egress (albeit only with clsact).

[1] https://lore.kernel.org/netdev/674b8cbfc385c6f37fb29a1de08d8fe5c2b0fbee.1771321118.git.pabeni@redhat.com/ [2] https://lore.kernel.org/netdev/cc6bfb4a-4a2b-42d8-b9ce-7ef6644fb22b@ovn.org/

Affected Software

VendorProductVersion RangeStatus
LinuxLinux172ba7d46c202e679f3ccb10264c67416aaeb1c4 < bc4e5bb529823a09f02dbe96169de679a9db26e0affected
LinuxLinux0b5b831122fc3789fff75be433ba3e4dd7b779d4 < fb3c380a54e33d1fd272cc342faa906d787d7ef1affected
LinuxLinux73f7da5fd124f2cda9161e2e46114915e6e82e97 < 5a110ddcc99bda77a28598b3555fe009eaab3828affected
LinuxLinux3f14b377d01d8357eba032b4cabc8c1149b458b6 < 524ce8b4ea8f64900b6c52b6a28df74f6bc0801eaffected
LinuxLinux3f14b377d01d8357eba032b4cabc8c1149b458b6 < 380ad8b7c65ea7aa10ef2258297079ed5ac1f5b6affected
LinuxLinux3f14b377d01d8357eba032b4cabc8c1149b458b6 < 9deda0fcda5c1f388c5e279541850b71a2ccfcf4affected
LinuxLinux3f14b377d01d8357eba032b4cabc8c1149b458b6 < 11cb63b0d1a0685e0831ae3c77223e002ef18189affected
LinuxLinuxf5346df0591d10bc948761ca854b1fae6d2ef441affected
LinuxLinux5.15.148 < 5.15.203affected
LinuxLinux6.1.75 < 6.1.167affected
LinuxLinux6.6.14 < 6.6.130affected
LinuxLinux6.7.2 < 6.8affected
LinuxLinux6.8affected
LinuxLinux0 < 6.8unaffected
LinuxLinux5.15.203 <= 5.15.*unaffected
LinuxLinux6.1.167 <= 6.1.*unaffected
LinuxLinux6.6.130 <= 6.6.*unaffected
LinuxLinux6.12.77 <= 6.12.*unaffected
LinuxLinux6.18.18 <= 6.18.*unaffected
LinuxLinux6.19.8 <= 6.19.*unaffected
LinuxLinux7.0 <= *unaffected

Weaknesses

References