Linux vulnerability

In the Linux kernel, the following vulnerability has been resolved: netfilter: x_tables: avoid leaking percpu counter pointers The native and compat get-entries paths copy the fixed rule entry header from the kernelized rule blob to userspace before overwriting the entry's counter fields with a sanitized counter snapshot. On SMP kernels, entry->counters.pcnt contains the percpu allocation address used by x_tables rule counters. A caller can provide a userspace buffer that faults during the initial fixed-header copy after pcnt has been copied but before the later sanitized counter copy runs. The syscall then returns -EFAULT while leaving the raw percpu pointer in userspace. Copy only the fixed entry prefix before counters from the kernelized rule blob, then copy the sanitized counter snapshot into the counter field. Apply this ordering to the IPv4, IPv6, and ARP native and compat get-entries implementations so a fault cannot expose the internal percpu counter pointer.

Published 25 Jun 2026Updated 8 Sep 20269 sources
CVSS 5.5

What happened

In the Linux kernel, the following vulnerability has been resolved: netfilter: x_tables: avoid leaking percpu counter pointers The native and compat get-entries paths copy the fixed rule entry header from the kernelized rule blob to userspace before overwriting the entry's counter fields with a sanitized counter snapshot. On SMP kernels, entry->counters.pcnt contains the percpu allocation address used by x_tables rule counters. A caller can provide a userspace buffer that faults during the initial fixed-header copy after pcnt has been copied but before the later sanitized counter copy runs. The syscall then returns -EFAULT while leaving the raw percpu pointer in userspace. Copy only the fixed entry prefix before counters from the kernelized rule blob, then copy the sanitized counter snapshot into the counter field. Apply this ordering to the IPv4, IPv6, and ARP native and compat get-entries implementations so a fault cannot expose the internal percpu counter pointer.

Affected versions

Linux: 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before b74ba3343eb44b2cbf7e9665918c287df1d52ebb (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before 0b35dc8527ccc16b7dc34e8a3164313e68cd4e45 (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before b28e2fcad3db7e8687b15bc20bced26b5b7c920e (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before a0d16941adf3a501956d74aefd8d6e217906e79c (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before 8d67e42ad3b1a95a152541015a07110e06992d6c (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before 08a3e218064db11f154ad9ad5541751ea7f34ebe (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before fb0521aff1e10e300d89725cc439d3ea74c828c5 (git); 71ae0dff02d756e4d2ca710b79f2ff5390029a5f through before f7f2fbb0e893a0238dc464f8d8c0f5609bec584f (git); 4.2; V3.1.6 through before * (custom) Fixed: See vendor advisory.

Why it matters

Review the vendor advisory and exposure of the affected product to determine operational impact.

Detection & mitigation

  • Apply vendor-provided updates or mitigations.
  • Review affected product exposure and access logs.

Public PoC references

No public PoC reference has passed the current publication threshold.