CVE-2022-48976: netfilter: flowtable_offload: fix using __this_cpu_add in preemptible
In the Linux kernel, the following vulnerability has been resolved:
netfilter: flowtable_offload: fix using __this_cpu_add in preemptible
flow_offload_queue_work() can be called in workqueue without
bh disabled, like the call trace showed in my act_ct testing,
calling NF_FLOW_TABLE_STAT_INC() there would cause a call
trace:
BUG: using __this_cpu_add() in preemptible [00000000] code: kworker/u4:0/138560
caller is flow_offload_queue_work+0xec/0x1b0 [nf_flow_table]
Workqueue: act_ct_workqueue tcf_ct_flow_table_cleanup_work [act_ct]
Call Trace:
<TASK>
dump_stack_lvl+0x33/0x46
check_preemption_disabled+0xc3/0xf0
flow_offload_queue_work+0xec/0x1b0 [nf_flow_table]
nf_flow_table_iterate+0x138/0x170 [nf_flow_table]
nf_flow_table_free+0x140/0x1a0 [nf_flow_table]
tcf_ct_flow_table_cleanup_work+0x2f/0x2b0 [act_ct]
process_one_work+0x6a3/0x1030
worker_thread+0x8a/0xdf0
This patch fixes it by using NF_FLOW_TABLE_STAT_INC_ATOMIC()
instead in flow_offload_queue_work().
Note that for FLOW_CLS_REPLACE branch in flow_offload_queue_work(),
it may not be called in preemptible path, but it's good to use
NF_FLOW_TABLE_STAT_INC_ATOMIC() for all cases in
flow_offload_queue_work().
Security readout for executives and security teams
Plain-English summary
CVE-2022-48976 is a Linux kernel netfilter flowtable bug that can trigger a kernel call trace when a statistic counter is updated in a preemptible workqueue path. The public record shows it has been fixed upstream, but does not provide CVSS, CWE, or confirmed real-world impact.
Executive priority
Track this as a kernel maintenance item until vendor advisories identify business-critical exposure. There is no cited evidence of active exploitation, but affected network and security infrastructure should receive normal kernel patch priority.
Technical view
The issue is in nf_flow_table flow_offload_queue_work(). It used NF_FLOW_TABLE_STAT_INC(), which can call __this_cpu_add() while preemption is possible. The fix changes this path to NF_FLOW_TABLE_STAT_INC_ATOMIC(), avoiding the preemption warning seen during act_ct flow table cleanup work.
Likely exposure
Exposure is most relevant to Linux systems running affected kernel builds that include netfilter flowtable offload and related act_ct paths. The source bundle names Linux kernel versions and stable commits, but distro package mappings require vendor advisory confirmation.
Exploitation context
The source bundle does not show CISA KEV listing, public exploitation, exploit code, or attacker prerequisites. Evidence is limited to a kernel call trace observed during testing and upstream stable fixes.
Researcher notes
Do not infer remote code execution, privilege escalation, or denial-of-service impact from the provided record alone. The evidence supports a correctness bug in a preemptible context, fixed by using the atomic statistic increment helper.
Mitigation direction
Update to a vendor kernel containing the referenced stable fixes.
Check Linux distribution advisories for exact fixed package versions.
Prioritize systems using netfilter flowtable offload or traffic control conntrack paths.
If patching is delayed, ask the vendor for supported configuration mitigations.
Validation and detection
Inventory Linux kernel versions across exposed servers and appliances.
Confirm whether nf_flow_table and act_ct-related functionality is used.
Compare running kernels against vendor fixed package guidance.
Review kernel logs for the referenced __this_cpu_add preemptible call trace.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2022-48976 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.