High · published May 19, 2024
In the Linux kernel, the following vulnerability has been resolved:
netfilter: nf_tables: Fix potential data-race in __nft_flowtable_type_get()
nft_unregister_flowtable_type() within nf_flow_inet_module_exit() can
concurrent with __nft_flowtable_type_get() within nf_tables_newflowtable().
And thhere is not any protection when iterate over nf_tables_flowtables
list in __nft_flowtable_type_get(). Therefore, there is pertential
data-race of nf_tables_flowtables list entry.
Use list_for_each_entry_rcu() to iterate over nf_tables_flowtables list
in __nft_flowtable_type_get(), and use rcu_read_lock() in the caller
nft_flowtable_type_get() to protect the entire type query process.
| Product | Versions | Fixed in |
|---|---|---|
| linux/linux_kernel | ≥ 4.16, < 4.19.312 | 4.19.312 |
| linux/linux_kernel | ≥ 4.20, < 5.4.274 | 5.4.274 |
| linux/linux_kernel | ≥ 5.5, < 5.10.215 | 5.10.215 |
| linux/linux_kernel | ≥ 5.11, < 5.15.154 | 5.15.154 |
| linux/linux_kernel | ≥ 5.16, < 6.1.85 | 6.1.85 |
| linux/linux_kernel | ≥ 6.2, < 6.6.26 | 6.6.26 |
| linux/linux_kernel | ≥ 6.7, < 6.8.5 | 6.8.5 |
| linux/linux_kernel | all versions | — |
| linux/linux_kernel | all versions | — |
| debian/debian_linux | all versions | — |