Skip to main content
Published on September 24, 2026
CVE-2026-53266, in the ebtables SNAT target. Added to CISA’s KEV catalog on September 18, 2026: it is being exploited in the wild. Fixes have shipped for Debian, RHEL 8 and 9, AlmaLinux and Ubuntu 26.04 — but not yet for Ubuntu 22.04 or 24.04. On those two releases, apply the mitigation now.

The problem in two sentences

The snat target of ebtables, the Linux bridge firewall, can rewrite the sender hardware address in ARP packets. The ebt_snat module performs that write through skb_store_bits() without first making sure the target memory range is writable. When that range is a file page imported with splice(), the kernel writes straight into the page cache. NVD classifies the flaw as an out-of-bounds write (CWE-787), with a CVSS score of 8.8.

Why this one matters

On paper, the flaw needs an unusual setup: an ebtables SNAT rule with ARP rewriting (--snat-arp) on a bridge. Red Hat describes it as requiring “specific bridge netfilter configurations”. That is true, but incomplete. The attacker can build that setup themselves. All it takes is CAP_NET_ADMIN in the network namespace that owns the bridge. Where unprivileged user namespaces are allowed, any ordinary account gets it with unshare -Urn, inside its own namespace, without touching the host configuration. The module loads itself. ebt_snat is loaded automatically as soon as a rule needs it. Its absence from lsmod today protects you from nothing. The write lands in the page cache. Six controlled bytes written into a file page are enough to modify, in memory, a file the attacker can read but not write — a setuid binary, for instance. These three points come from the public tracker for the flaw, not from the distribution advisories, which do not describe the attack path. CISA does not say how the exploitation it observed was carried out either.

Sizing your exposure

There are two questions: who can run code on the machine, and can they obtain CAP_NET_ADMIN? As usual with this class of bug, a local foothold is required. The flaw is not remotely exploitable on its own, but it turns a compromised web application or a low-privilege account into control of the machine. To check whether an unprivileged account can create its own network namespace:

Applying the fix

The upstream fix landed in Linux 7.1-rc7. It makes the ARP address range writable before reading and rewriting it.

Debian, Ubuntu and derivatives

Status as of September 24, 2026, per the Debian and Ubuntu trackers:

AlmaLinux, Rocky Linux and RHEL

Red Hat also ships kernel-rt-4.18.0-553.143.1.rt7.484.el8_10 for the RHEL 8 real-time kernel (RHSA-2026:39082). Any later version than those listed includes the fix.

Immediate mitigation

Apply this if your fixed kernel is not out yet, or until you are able to reboot.

Block the ebt_snat module

Without the module, the ebtables SNAT target no longer exists — and neither does the vulnerable path.
If you run a host that relies on ebtables SNAT rules, this block breaks them. Red Hat offers another route for that case: remove the ARP rewrite option from those rules, or delete the SNAT rules that apply to ARP traffic. List them with sudo ebtables -t nat -L.

Disable unprivileged user namespaces (Debian and Ubuntu)

A second barrier: stop an ordinary account from obtaining CAP_NET_ADMIN in a namespace of its own. This setting exists on Debian and Ubuntu kernels.
This breaks anything that depends on those namespaces, rootless containers in particular. Check what you run before applying it in production.

On a Kubernetes cluster

Roll the module block out to every node with a privileged DaemonSet. The pause container keeps the DaemonSet from restart-looping once the initContainer finishes.

Verifying the mitigation

After the kernel upgrade, confirm it is the one actually running:
A package installed without a reboot protects nothing: the machine is still running the old kernel.

Rolling back the mitigation

Once the fixed kernel is booted, you can revert:

What next?

The flaw was disclosed on June 25 and fixed by Red Hat as early as July 8, but only entered the KEV catalog on September 18. Put differently, fixes had been available for more than two months when exploitation was confirmed. If your servers have not rebooted onto an updated kernel since July, treat the window as open. If you have doubts about a machine, do not clean it in place: rebuild it from a known-good state using your snapshots and backups, then rotate every secret it held. Want a second opinion on your fleet? Our team is available from your customer area.