netfilter: ebtables: fix OOB read in compat_mtw_from_user
In the Linux kernel, the following vulnerability has been resolved: netfilter: ebtables: fix OOB read in compat_mtw_from_user Luxiao Xu says: The function compat_mtw_from_user() converts ebtables extensions from 32-bit user structures to kernel native structures. However, it lacks proper validation of the user-supplied match_size/target_size. When certain extensions are processed, the kernel-side translation logic may perform memory accesses based on the extension's expected size. If the user provides a size smaller than what the extension requires, it results in an out-of-bounds read as reported by KASAN. This fix introduces a check to ensure match_size is at least as large as the extension's required compatsize. This covers matches, watchers, and targets, while maintaining compatibility with standard targets. AFAIU this is relevant for matches that need to go though match->compat_from_user() call. Those that use plain memcpy with the user-provided size are ok because the caller checks that size vs the start of the next rule entry offset (which itself is checked vs. total size copied from userspace). The ->compat_from_user() callbacks assume they can read compatsize bytes, so they need this extra check. Based on an earlier patch from Luxiao Xu.
CVE-2026-52927
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: cve:CVE-2026-52927
Linux
Source reference: /containers/cna/affected/0/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Linux
Source reference: /containers/cna/affected/1/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "d7a8fb6f10d55a1c37b0bf8c20cca24dffd76e00",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "21af4c030567d2e6c89bb927bc18b51fba52a400",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "dad9ebf8107955bb54bd3f9cf22591b6ff37bac1",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "a27cb7325a6c69970041c7f8541fafed5a1ea3ec",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "7ad0e463fc7eafae2141cc38054264636f8b3e94",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "bf8e8eac7ede51dc318e06acef5a896dcbba7595",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "fcc4c043d137e7f1de4673dba1f3116e45377c67",
"versionType": "git"
},
{
"status": "affected",
"version": "81e675c227ec60a0bdcbb547dc530ebee23ff931",
"lessThan": "f438d1786d657d57790c5d138d6db3fc9fdac392",
"versionType": "git"
}
],
"programFiles": [
"net/bridge/netfilter/ebtables.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.34"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "2.6.34",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.10.259",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.210",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.176",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.143",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.93",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.35",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.0.12",
"versionType": "semver",
"lessThanOrEqual": "7.0.*"
},
{
"status": "unaffected",
"version": "7.1",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"net/bridge/netfilter/ebtables.c"
],
"defaultStatus": "affected"
}
]- Related CVEs
- CVE-2026-52927
Source reference:
/cveMetadata/cveId
Publisher severity
high
Source reference: /containers/cna/metrics
- Event
- #40697 · Revision 1
- Added to Heist Feed
- Publisher date