n the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: do not defer rule destruction via call_rcu nf_tables_chain_destroy can sleep, it can't be used from call_rcu callbacks. Moreover, nf_tables_rule_release() is only safe for error unwinding, while transaction mutex is held and the to-be-desroyed rule was not exposed to either dataplane or dumps, as it deactives+frees without the required synchronize_rcu() in-between. nft_rule_expr_deactivate() callbacks will change ->use counters of other chains/sets, see e.g. nft_lookup .deactivate callback, these must be serialized via transaction mutex. Also add a few lockdep asserts to make this more explicit. Calling synchronize_rcu() isn't ideal, but fixing this without is hard and way more intrusive. As-is, we can get: WARNING: .. net/netfilter/nf_tables_api.c:5515 nft_set_destroy+0x.. Workqueue: events nf_tables_trans_destroy_work RIP: 0010:nft_set_destroy+0x3fe/0x5c0 Call Trace: <TASK> nf_tables_trans_destroy_work+0x6b7/0xad0 process_one_work+0x64a/0xce0 worker_thread+0x613/0x10d0 In case the synchronize_rcu becomes an issue, we can explore alternatives. One way would be to allocate nft_trans_rule objects + one nft_trans_chain object, deactivate the rules + the chain and then defer the freeing to the nft destroy workqueue. We'd still need to keep the synchronize_rcu path as a fallback to handle -ENOMEM corner cases though.
Configuration 1 (hide)
|
04 Jun 2025, 13:15
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
22 May 2025, 13:15
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
06 Jan 2025, 19:39
| Type | Values Removed | Values Added |
|---|---|---|
| References | () https://git.kernel.org/stable/c/27f0574253f6c24c8ee4e3f0a685b75ed3a256ed - Patch | |
| References | () https://git.kernel.org/stable/c/7cf0bd232b565d9852cb25fd094f77254773e048 - Patch | |
| References | () https://git.kernel.org/stable/c/b04df3da1b5c6f6dc7cdccc37941740c078c4043 - Patch | |
| First Time |
Linux linux Kernel
Linux |
|
| CWE | NVD-CWE-noinfo | |
| CPE | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.13:rc2:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:6.13:rc1:*:*:*:*:*:* |
|
| Summary |
|
|
| CVSS |
v2 : v3 : |
v2 : unknown
v3 : 5.5 |
27 Dec 2024, 15:15
| Type | Values Removed | Values Added |
|---|---|---|
| New CVE |
Published : 2024-12-27 15:15
Updated : 2025-06-04 13:15
NVD link : CVE-2024-56655
Mitre link : CVE-2024-56655
CVE.ORG link : CVE-2024-56655
JSON object : View