CVE-2026-53266
CVE-2026-53266
netfilter: bridge: make ebt_snat ARP rewrite writable
Apply mitigations in accordance with vendor instructions, ensuring compliance with CISA’s BOD 26-04 Prioritizing Security Updates Based on Risk (see URL in Notes) guidance and CISA’s “Forensics Triage Requirements” (see URL in Notes). Follow applicable BOD 26-04 guidance for cloud services or discontinue use of the product if mitigations are unavailable. Stakeholders are responsible for evaluating each asset's internet exposure and ensuring adherence to BOD 26-04 patching guidelines.
CVSS 3.1 · CNA
chance of exploitation in the next 30 days (EPSS; higher than 60% of CVEs)
In the Linux kernel, the following vulnerability has been resolved: netfilter: bridge: make ebt_snat ARP rewrite writable The ebtables SNAT target keeps the Ethernet source address rewrite behind skb_ensure_writable(skb, 0). This is intentional: at the bridge ebtables hooks the Ethernet header is addressed through skb_mac_header()/eth_hdr(), while skb->data points at the Ethernet payload. Asking skb_ensure_writable() for ETH_HLEN bytes would check the payload, not the Ethernet header, and would reintroduce the small packet regression fixed by commit 63137bc5882a. However, the optional ARP sender hardware address rewrite is different. It writes through skb_store_bits() at an offset relative to skb->data: skb_store_bits(skb, sizeof(struct arphdr), info->mac, ETH_ALEN) skb_header_pointer() only safely reads the ARP header; it does not make the later sender hardware address range writable. If that range is still held in a nonlinear skb fragment backed by a splice-imported file page, skb_store_bits() maps the frag page and copies the new MAC address directly into it. Ensure the ARP SHA range is writable before reading the ARP header and before calling skb_store_bits().
Scores
Affected packages and fixed versions
| Package | Ecosystem | Fixed in |
|---|---|---|
| Kernel | Linux | 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.94, 6.18.36, 7.0.13 |
Affected products
- Linux Linux: 63137bc5882a1882c553d389fdeeeace86ee1741 to < bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87; 63137bc5882a1882c553d389fdeeeace86ee1741 to < 76280b78cc9f23bdc6438e10ad6dff148ef8375b; 63137bc5882a1882c553d389fdeeeace86ee1741 to < b7e91939ba9be805a62a257fa4e227dffbb88fa0; 63137bc5882a1882c553d389fdeeeace86ee1741 to < afd64b59c3de9bbbdd3759e834fdc55cda716e0b; 63137bc5882a1882c553d389fdeeeace86ee1741 to < 153ea96c806aea395daba907a4f88480b6ad5093; 63137bc5882a1882c553d389fdeeeace86ee1741 to < b18675263db1147c8e1cab625400c13a0d87bd2d; 63137bc5882a1882c553d389fdeeeace86ee1741 to < c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5; 63137bc5882a1882c553d389fdeeeace86ee1741 to < 67ba971ae02514d85818fe0c32549ab4bfa3bf49; 2f3839075a5f8dcf116c1abe35b36b018ac62445; 51ba2945a8ef65ae437c8f9ba05f0343aa82ae5b; b7d23c2c87584eb429f115c078ed511be8b18e29; 5.4.73 to < 5.5; 5.8.17 to < 5.9; 5.9.2 to < 5.10
- Linux Linux: 5.10
8 references (advisories, patches, write-ups)
- https://git.kernel.org/stable/c/bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87
- https://git.kernel.org/stable/c/76280b78cc9f23bdc6438e10ad6dff148ef8375b
- https://git.kernel.org/stable/c/b7e91939ba9be805a62a257fa4e227dffbb88fa0
- https://git.kernel.org/stable/c/afd64b59c3de9bbbdd3759e834fdc55cda716e0b
- https://git.kernel.org/stable/c/153ea96c806aea395daba907a4f88480b6ad5093
- https://git.kernel.org/stable/c/b18675263db1147c8e1cab625400c13a0d87bd2d
- https://git.kernel.org/stable/c/c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5
- https://git.kernel.org/stable/c/67ba971ae02514d85818fe0c32549ab4bfa3bf49
Sources: CVE.org, OSV.dev, FIRST EPSS. Missing ones did not answer or have no record yet.