In the Linux kernel, the following vulnerability has been resolved:
net/sched: act_ct: Only release RCU read lock after ct_ft
When looking up a flow table in act_ct in tcf_ct_flow_table_get(), rhashtable_lookup_fast() internally opens and closes an RCU read critical section before returning ct_ft. The tcf_ct_flow_table_cleanup_work() can complete before refcount_inc_not_zero() is invoked on the returned ct_ft resulting in a UAF on the already freed ct_ft object. This vulnerability can lead to privilege escalation.
Analysis from [email protected]: When initializing act_ct, tcf_ct_init() is called, which internally triggers tcf_ct_flow_table_get().
static int tcf_ct_flow_table_get(struct net *net, struct tcf_ct_params *params)
{ struct zones_ht_key key = { .net = net, .zone = params->zone }; struct tcf_ct_flow_table *ct_ft; int err = -ENOMEM;
mutex_lock(&zones_mutex); ct_ft = rhashtable_lookup_fast(&zones_ht, &key, zones_params); // [1] if (ct_ft && refcount_inc_not_zero(&ct_ft->ref)) // [2] goto out_unlock; ... }
static __always_inline void *rhashtable_lookup_fast( struct rhashtable *ht, const void *key, const struct rhashtable_params params) { void *obj;
rcu_read_lock(); obj = rhashtable_lookup(ht, key, params); rcu_read_unlock();
return obj; }
At [1], rhashtable_lookup_fast() looks up and returns the corresponding ct_ft from zones_ht . The lookup is performed within an RCU read critical section through rcu_read_lock() / rcu_read_unlock(), which prevents the object from being freed. However, at the point of function return, rcu_read_unlock() has already been called, and there is nothing preventing ct_ft from being freed before reaching refcount_inc_not_zero(&ct_ft->ref) at [2]. This interval becomes the race window, during which ct_ft can be freed.
Free Process:
tcf_ct_flow_table_put() is executed through the path tcf_ct_cleanup() call_rcu() tcf_ct_params_free_rcu() tcf_ct_params_free() tcf_ct_flow_table_put().
static void tcf_ct_flow_table_put(struct tcf_ct_flow_table *ct_ft) { if (refcount_dec_and_test(&ct_ft->ref)) { rhashtable_remove_fast(&zones_ht, &ct_ft->node, zones_params); INIT_RCU_WORK(&ct_ft->rwork, tcf_ct_flow_table_cleanup_work); // [3] queue_rcu_work(act_ct_wq, &ct_ft->rwork); } }
At [3], tcf_ct_flow_table_cleanup_work() is scheduled as RCU work
static void tcf_ct_flow_table_cleanup_work(struct work_struct *work)
{ struct tcf_ct_flow_table *ct_ft; struct flow_block *block;
ct_ft = container_of(to_rcu_work(work), struct tcf_ct_flow_table, rwork); nf_flow_table_free(&ct_ft->nf_ft); block = &ct_ft->nf_ft.flow_block; down_write(&ct_ft->nf_ft.flow_block_lock); WARN_ON(!list_empty(&block->cb_list)); up_write(&ct_ft->nf_ft.flow_block_lock); kfree(ct_ft); // [4]
module_put(THIS_MODULE); }
tcf_ct_flow_table_cleanup_work() frees ct_ft at [4]. When this function executes between [1] and [2], UAF occurs.
This race condition has a very short race window, making it generally difficult to trigger. Therefore, to trigger the vulnerability an msleep(100) was inserted after[1]
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 |
|---|---|---|---|---|
| Debian | — | Upgrade linuxUpgrade linux-6.1 | Jul 5, 2026 | Jul 5, 2026 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rtNo solution exists | Jul 17, 2026 | Jun 9, 2026 |
| Rocky_linux | — | Upgrade kernel-debug-coreUpgrade kernel-rt-debuginfo-common-x86_64Upgrade bpftoolUpgrade kernel-rt-kvmUpgrade perfUpgrade python3-perf-debuginfoUpgrade kernel-coreUpgrade kernel-rt-coreUpgrade kernel-modulesUpgrade kernel-rt-debug-modules-extraUpgrade kernel-rt-debug-debuginfoUpgrade kernel-rt-debugUpgrade kernel-rt-modules-extraUpgrade kernel-rt-develUpgrade kernel-rt-modulesUpgrade kernel-debuginfoUpgrade kernel-develUpgrade kernel-tools-libsUpgrade python3-perfUpgrade kernel-rt-debug-modulesUpgrade kernel-debugUpgrade kernel-debug-develUpgrade kernel-modules-extraUpgrade kernel-rt-debug-coreUpgrade kernel-tools-debuginfoUpgrade kernel-debug-modulesUpgrade kernel-rtUpgrade bpftool-debuginfoUpgrade kernel-toolsUpgrade kernelUpgrade kernel-rt-debug-kvmUpgrade kernel-tools-libs-develUpgrade kernel-debug-modules-extraUpgrade kernel-debuginfo-common-x86_64Upgrade perf-debuginfoUpgrade kernel-rt-debuginfoUpgrade kernel-rt-debug-develUpgrade kernel-debug-debuginfo | Oct 7, 2026 | Oct 6, 2026 |
| Ubuntu | — | Upgrade linux-image-awsUpgrade linux-image-aws-5.15Upgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-5.15.0-186-fipsUpgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-6.8.0-1059-gkeUpgrade linux-image-6.8.0-136-lowlatencyUpgrade linux-image-6.8.0-136-generic-64kUpgrade linux-image-6.8.0-136-lowlatency-64kUpgrade linux-image-aws-64k-lts-24.04Upgrade linux-image-azure-fipsUpgrade linux-image-gcp-5.15Upgrade linux-image-6.8.1-1056-realtimeUpgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-7.0.0-1003-gke-64kUpgrade linux-image-laptop-23.10Upgrade linux-image-fips-6.8Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-azure-fde-6.8Upgrade linux-image-generic-hwe-26.04Upgrade linux-image-fipsUpgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-6.8.0-1033-xilinxUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-7.0.0-1014-azureUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-oem-24.04bUpgrade linux-image-7.0.0-28-realtime-64kUpgrade linux-image-virtual-5.15Upgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-6.8.0-1030-nvidia-tegraUpgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-azure-7.0Upgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-1059-nvidia-lowlatency-64kUpgrade linux-image-kvmUpgrade linux-image-gke-hwe-26.04Upgrade linux-image-realtime-64kUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-7.0.0-28-realtimeUpgrade linux-image-generic-64k-6.8Upgrade linux-image-5.15.0-1117-azureUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-6.8.0-2050-raspi-realtimeUpgrade linux-image-fips-5.15Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-lowlatency-5.15Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-generic-hwe-24.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-gke-64k-hwe-26.04Upgrade linux-image-ibm-5.15Upgrade linux-image-realtimeUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-lowlatency-6.8Upgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-7.0.0-1008-gcp-64kUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-6.8.0-1064-gcp-64kUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-6.8.0-1059-nvidia-lowlatencyUpgrade linux-image-generic-5.15Upgrade linux-image-gcp-lts-22.04Upgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-aws-64k-6.8Upgrade linux-image-virtualUpgrade linux-image-virtual-7.0Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-realtime-64k-7.0Upgrade linux-image-raspi-nolpaeUpgrade linux-image-virtual-6.8Upgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-6.8.0-1064-gcpUpgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-gke-64k-6.8Upgrade linux-image-gcp-fips-5.15Upgrade linux-image-aws-6.8Upgrade linux-image-7.0.0-1009-awsUpgrade linux-image-7.0.0-1003-gkeUpgrade linux-image-6.8.0-1063-azureUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-oracle-64k-6.8Upgrade linux-image-nvidia-5.15Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-lowlatency-64kUpgrade linux-image-azure-fips-6.8Upgrade linux-image-xilinxUpgrade linux-image-gcp-64kUpgrade linux-image-nvidia-bosUpgrade linux-image-nvidia-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-6.8.0-136-fipsUpgrade linux-image-nvidia-bos-7.0Upgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-realtime-hwe-26.04Upgrade linux-image-raspi-5.15Upgrade linux-image-5.15.0-186-genericUpgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-gcp-fipsUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-azure-5.15Upgrade linux-image-generic-64kUpgrade linux-image-genericUpgrade linux-image-6.8.0-1059-nvidia-64kUpgrade linux-image-6.8.0-1058-oracleUpgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-xilinx-zynqmpUpgrade linux-image-oracle-5.15Upgrade linux-image-oem-24.04dUpgrade linux-image-oem-24.04Upgrade linux-image-oem-22.04cUpgrade linux-image-oem-20.04cUpgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-gke-6.8Upgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-aws-7.0Upgrade linux-image-6.8.0-1061-ibmUpgrade linux-image-7.0.0-28-generic-64kUpgrade linux-image-6.8.0-1059-gke-64kUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-gke-5.15Upgrade linux-image-gkeopUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-ibm-6.8Upgrade linux-image-gke-64k-7.0Upgrade linux-image-6.8.0-1059-nvidiaUpgrade linux-image-gkeUpgrade linux-image-aws-fips-5.15Upgrade linux-image-aws-64kUpgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-6.8.0-1063-azure-fipsUpgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-virtual-hwe-26.04Upgrade linux-image-raspi-realtime-7.0Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oem-22.04Upgrade linux-image-intelUpgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-generic-64k-hwe-26.04Upgrade linux-image-gcpUpgrade linux-image-azure-fips-5.15Upgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-realtime-7.0Upgrade linux-image-raspi-realtimeUpgrade linux-image-oracle-64kUpgrade linux-image-oem-26.04Upgrade linux-image-oem-22.04aUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-nvidia-64k-7.0Upgrade linux-image-intel-iotgUpgrade linux-image-gkeop-6.8Upgrade linux-image-gke-7.0Upgrade linux-image-6.8.0-1061-raspiUpgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-7.0.0-1009-oemUpgrade linux-image-azureUpgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-6.8.0-1062-azure-fdeUpgrade linux-image-6.8.0-1061-aws-64kUpgrade linux-image-6.8.0-1058-oracle-64kUpgrade linux-image-6.8.0-1030-nvidia-tegra-rtUpgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-5.15.0-1112-awsUpgrade linux-image-realtime-6.8.1Upgrade linux-image-raspiUpgrade linux-image-oem-24.04aUpgrade linux-image-oem-20.04dUpgrade linux-image-oem-20.04bUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-nvidia-7.0Upgrade linux-image-nvidiaUpgrade linux-image-ibm-7.0Upgrade linux-image-ibmUpgrade linux-image-nvidia-tegraUpgrade linux-image-realtime-64k-hwe-26.04Upgrade linux-image-oem-7.0Upgrade linux-image-oracle-7.0Upgrade linux-image-oracle-6.8Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-lowlatencyUpgrade linux-image-kvm-5.15Upgrade linux-image-generic-64k-5.15Upgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-6.8.0-136-genericUpgrade linux-image-gcp-fips-6.8Upgrade linux-image-azure-lts-22.04Upgrade linux-image-azure-fdeUpgrade linux-image-azure-6.8Upgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-xilinx-6.8Upgrade linux-image-virtual-hwe-22.04Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-oracle-lts-24.04Upgrade linux-image-nvidia-6.8Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-virtual-hwe-20.04Upgrade linux-image-realtime-5.15Upgrade linux-image-7.0.0-1010-azureUpgrade linux-image-gke-64kUpgrade linux-image-raspi-6.8Upgrade linux-image-generic-lpaeUpgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-oem-26.04aUpgrade linux-image-ibm-classicUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-generic-64k-7.0Upgrade linux-image-6.8.0-1046-gkeopUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-azure-fde-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-gcp-7.0Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-22.04bUpgrade linux-image-oem-22.04dUpgrade linux-image-oem-24.04cUpgrade linux-image-oracle-lts-22.04Upgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-aws-64k-5.15Upgrade linux-image-aws-64k-lts-22.04 | Jul 20, 2026 | Jun 9, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 6, 2026 | Jun 9, 2026 |
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