Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2023-53200

netfilter: x_tables: fix percpu counter block leak on error path when creating new netns

Description

In the Linux kernel, the following vulnerability has been resolved: netfilter: x_tables: fix percpu counter block leak on error path when creating new netns Here is the stack where we allocate percpu counter block: +-< __alloc_percpu +-< xt_percpu_counter_alloc +-< find_check_entry # {arp,ip,ip6}_tables.c +-< translate_table And it can be leaked on this code path: +-> ip6t_register_table +-> translate_table # allocates percpu counter block +-> xt_register_table # fails there is no freeing of the counter block on xt_register_table fail. Note: xt_percpu_counter_free should be called to free it like we do in do_replace through cleanup_entry helper (or in __ip6t_unregister_table). Probability of hitting this error path is low AFAICS (xt_register_table can only return ENOMEM here, as it is not replacing anything, as we are creating new netns, and it is hard to imagine that all previous allocations succeeded and after that one in xt_register_table failed). But it's worth fixing even the rare leak.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 71ae0dff02d756e4d2ca710b79f2ff5390029a5f to < e306dbee4c98025a9326386023a12ef4d887e9d1affected
  • 71ae0dff02d756e4d2ca710b79f2ff5390029a5f to < 512b6c4b83c91d007301ea7d7f095d16c3aceacdaffected
  • 71ae0dff02d756e4d2ca710b79f2ff5390029a5f to < 3cc9610a87b7dde82f7360dd4eb6c2c27940ed57affected
  • 71ae0dff02d756e4d2ca710b79f2ff5390029a5f to < 0af8c09c896810879387decfba8c942994bb61f5affected

Linux Linux

Default version status: affected

  • 4.2affected
  • 0 to < 4.2unaffected
  • 5.15.100 to ≤ 5.15.*unaffected
  • 6.1.18 to ≤ 6.1.*unaffected
  • 6.2.5 to ≤ 6.2.*unaffected
  • 6.3 to ≤ *unaffected

References