{"api_version":"1","generated_at":"2026-06-25T14:13:12+00:00","cve":"CVE-2026-53266","urls":{"html":"https://cve.report/CVE-2026-53266","api":"https://cve.report/api/cve/CVE-2026-53266.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-53266","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-53266"},"summary":{"title":"netfilter: bridge: make ebt_snat ARP rewrite writable","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: bridge: make ebt_snat ARP rewrite writable\n\nThe ebtables SNAT target keeps the Ethernet source address rewrite\nbehind skb_ensure_writable(skb, 0).  This is intentional: at the bridge\nebtables hooks the Ethernet header is addressed through\nskb_mac_header()/eth_hdr(), while skb->data points at the Ethernet\npayload.  Asking skb_ensure_writable() for ETH_HLEN bytes would check\nthe payload, not the Ethernet header, and would reintroduce the small\npacket regression fixed by commit 63137bc5882a.\n\nHowever, the optional ARP sender hardware address rewrite is different.\nIt writes through skb_store_bits() at an offset relative to skb->data:\n\n        skb_store_bits(skb, sizeof(struct arphdr), info->mac, ETH_ALEN)\n\nskb_header_pointer() only safely reads the ARP header; it does not make\nthe later sender hardware address range writable.  If that range is\nstill held in a nonlinear skb fragment backed by a splice-imported file\npage, skb_store_bits() maps the frag page and copies the new MAC address\ndirectly into it.\n\nEnsure the ARP SHA range is writable before reading the ARP header and\nbefore calling skb_store_bits().","state":"PUBLISHED","assigner":"Linux","published_at":"2026-06-25 09:16:44","updated_at":"2026-06-25 09:16:44"},"problem_types":[],"metrics":[],"references":[{"url":"https://git.kernel.org/stable/c/b7e91939ba9be805a62a257fa4e227dffbb88fa0","name":"https://git.kernel.org/stable/c/b7e91939ba9be805a62a257fa4e227dffbb88fa0","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/153ea96c806aea395daba907a4f88480b6ad5093","name":"https://git.kernel.org/stable/c/153ea96c806aea395daba907a4f88480b6ad5093","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/76280b78cc9f23bdc6438e10ad6dff148ef8375b","name":"https://git.kernel.org/stable/c/76280b78cc9f23bdc6438e10ad6dff148ef8375b","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/67ba971ae02514d85818fe0c32549ab4bfa3bf49","name":"https://git.kernel.org/stable/c/67ba971ae02514d85818fe0c32549ab4bfa3bf49","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/afd64b59c3de9bbbdd3759e834fdc55cda716e0b","name":"https://git.kernel.org/stable/c/afd64b59c3de9bbbdd3759e834fdc55cda716e0b","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5","name":"https://git.kernel.org/stable/c/c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/b18675263db1147c8e1cab625400c13a0d87bd2d","name":"https://git.kernel.org/stable/c/b18675263db1147c8e1cab625400c13a0d87bd2d","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87","name":"https://git.kernel.org/stable/c/bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-53266","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-53266","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 76280b78cc9f23bdc6438e10ad6dff148ef8375b git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 b7e91939ba9be805a62a257fa4e227dffbb88fa0 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 afd64b59c3de9bbbdd3759e834fdc55cda716e0b git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 153ea96c806aea395daba907a4f88480b6ad5093 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 b18675263db1147c8e1cab625400c13a0d87bd2d git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 63137bc5882a1882c553d389fdeeeace86ee1741 67ba971ae02514d85818fe0c32549ab4bfa3bf49 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 2f3839075a5f8dcf116c1abe35b36b018ac62445 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 51ba2945a8ef65ae437c8f9ba05f0343aa82ae5b git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected b7d23c2c87584eb429f115c078ed511be8b18e29 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.4.73 5.5 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.8.17 5.9 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.9.2 5.10 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 5.10","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.10.259 5.10.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 5.15.210 5.15.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.1.176 6.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.6.143 6.6.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.12.94 6.12.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.18.36 6.18.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0.13 7.0.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["net/bridge/netfilter/ebt_snat.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"76280b78cc9f23bdc6438e10ad6dff148ef8375b","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"b7e91939ba9be805a62a257fa4e227dffbb88fa0","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"afd64b59c3de9bbbdd3759e834fdc55cda716e0b","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"153ea96c806aea395daba907a4f88480b6ad5093","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"b18675263db1147c8e1cab625400c13a0d87bd2d","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"lessThan":"67ba971ae02514d85818fe0c32549ab4bfa3bf49","status":"affected","version":"63137bc5882a1882c553d389fdeeeace86ee1741","versionType":"git"},{"status":"affected","version":"2f3839075a5f8dcf116c1abe35b36b018ac62445","versionType":"git"},{"status":"affected","version":"51ba2945a8ef65ae437c8f9ba05f0343aa82ae5b","versionType":"git"},{"status":"affected","version":"b7d23c2c87584eb429f115c078ed511be8b18e29","versionType":"git"},{"lessThan":"5.5","status":"affected","version":"5.4.73","versionType":"semver"},{"lessThan":"5.9","status":"affected","version":"5.8.17","versionType":"semver"},{"lessThan":"5.10","status":"affected","version":"5.9.2","versionType":"semver"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["net/bridge/netfilter/ebt_snat.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"5.10"},{"lessThan":"5.10","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"5.10.*","status":"unaffected","version":"5.10.259","versionType":"semver"},{"lessThanOrEqual":"5.15.*","status":"unaffected","version":"5.15.210","versionType":"semver"},{"lessThanOrEqual":"6.1.*","status":"unaffected","version":"6.1.176","versionType":"semver"},{"lessThanOrEqual":"6.6.*","status":"unaffected","version":"6.6.143","versionType":"semver"},{"lessThanOrEqual":"6.12.*","status":"unaffected","version":"6.12.94","versionType":"semver"},{"lessThanOrEqual":"6.18.*","status":"unaffected","version":"6.18.36","versionType":"semver"},{"lessThanOrEqual":"7.0.*","status":"unaffected","version":"7.0.13","versionType":"semver"},{"lessThanOrEqual":"*","status":"unaffected","version":"7.1","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"cpeMatch":[{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.10.259","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"5.15.210","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.1.176","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.6.143","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.12.94","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"6.18.36","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.0.13","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.1","versionStartIncluding":"5.10","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.4.73","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.8.17","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.9.2","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: bridge: make ebt_snat ARP rewrite writable\n\nThe ebtables SNAT target keeps the Ethernet source address rewrite\nbehind skb_ensure_writable(skb, 0).  This is intentional: at the bridge\nebtables hooks the Ethernet header is addressed through\nskb_mac_header()/eth_hdr(), while skb->data points at the Ethernet\npayload.  Asking skb_ensure_writable() for ETH_HLEN bytes would check\nthe payload, not the Ethernet header, and would reintroduce the small\npacket regression fixed by commit 63137bc5882a.\n\nHowever, the optional ARP sender hardware address rewrite is different.\nIt writes through skb_store_bits() at an offset relative to skb->data:\n\n        skb_store_bits(skb, sizeof(struct arphdr), info->mac, ETH_ALEN)\n\nskb_header_pointer() only safely reads the ARP header; it does not make\nthe later sender hardware address range writable.  If that range is\nstill held in a nonlinear skb fragment backed by a splice-imported file\npage, skb_store_bits() maps the frag page and copies the new MAC address\ndirectly into it.\n\nEnsure the ARP SHA range is writable before reading the ARP header and\nbefore calling skb_store_bits()."}],"providerMetadata":{"dateUpdated":"2026-06-25T08:39:53.190Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/bf84ad7c7a9ede46e31afaa41a1ba06a159e8c87"},{"url":"https://git.kernel.org/stable/c/76280b78cc9f23bdc6438e10ad6dff148ef8375b"},{"url":"https://git.kernel.org/stable/c/b7e91939ba9be805a62a257fa4e227dffbb88fa0"},{"url":"https://git.kernel.org/stable/c/afd64b59c3de9bbbdd3759e834fdc55cda716e0b"},{"url":"https://git.kernel.org/stable/c/153ea96c806aea395daba907a4f88480b6ad5093"},{"url":"https://git.kernel.org/stable/c/b18675263db1147c8e1cab625400c13a0d87bd2d"},{"url":"https://git.kernel.org/stable/c/c9b5ff59feffb92a147a84a5aa28acd2cb8ff4c5"},{"url":"https://git.kernel.org/stable/c/67ba971ae02514d85818fe0c32549ab4bfa3bf49"}],"title":"netfilter: bridge: make ebt_snat ARP rewrite writable","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-53266","datePublished":"2026-06-25T08:39:53.190Z","dateReserved":"2026-06-09T07:44:35.395Z","dateUpdated":"2026-06-25T08:39:53.190Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-06-25 09:16:44","lastModifiedDate":"2026-06-25 09:16:44","problem_types":[],"metrics":[],"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"53266","Ordinal":"1","Title":"netfilter: bridge: make ebt_snat ARP rewrite writable","CVE":"CVE-2026-53266","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"53266","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: bridge: make ebt_snat ARP rewrite writable\n\nThe ebtables SNAT target keeps the Ethernet source address rewrite\nbehind skb_ensure_writable(skb, 0).  This is intentional: at the bridge\nebtables hooks the Ethernet header is addressed through\nskb_mac_header()/eth_hdr(), while skb->data points at the Ethernet\npayload.  Asking skb_ensure_writable() for ETH_HLEN bytes would check\nthe payload, not the Ethernet header, and would reintroduce the small\npacket regression fixed by commit 63137bc5882a.\n\nHowever, the optional ARP sender hardware address rewrite is different.\nIt writes through skb_store_bits() at an offset relative to skb->data:\n\n        skb_store_bits(skb, sizeof(struct arphdr), info->mac, ETH_ALEN)\n\nskb_header_pointer() only safely reads the ARP header; it does not make\nthe later sender hardware address range writable.  If that range is\nstill held in a nonlinear skb fragment backed by a splice-imported file\npage, skb_store_bits() maps the frag page and copies the new MAC address\ndirectly into it.\n\nEnsure the ARP SHA range is writable before reading the ARP header and\nbefore calling skb_store_bits().","Type":"Description","Title":"netfilter: bridge: make ebt_snat ARP rewrite writable"}]}}}