CVE-2026-46132
net: rtnetlink: zero ifla_vf_broadcast to avoid stack infoleak in rtnl_fill_vfinfo
In the Linux kernel, the following vulnerability has been resolved: net: rtnetlink: zero ifla_vf_broadcast to avoid stack infoleak in rtnl_fill_vfinfo rtnl_fill_vfinfo() declares struct ifla_vf_broadcast on the stack without initialisation: struct ifla_vf_broadcast vf_broadcast; The struct contains a single fixed 32-byte field: /* include/uapi/linux/if_link.h */ struct ifla_vf_broadcast { __u8 broadcast[32]; }; The function then copies dev->broadcast into it using dev->addr_len as the length: memcpy(vf_broadcast.broadcast, dev->broadcast, dev->addr_len); On Ethernet devices (the overwhelming majority of SR-IOV NICs) dev->addr_len is 6, so only the first 6 bytes of broadcast[] are written. The remaining 26 bytes retain whatever was previously on the kernel stack. The full struct is then handed to userspace via: nla_put(skb, IFLA_VF_BROADCAST, sizeof(vf_broadcast), &vf_broadcast) leaking up to 26 bytes of uninitialised kernel stack per VF per RTM_GETLINK request, repeatable. The other vf_* structs in the same function are explicitly zeroed for exactly this reason - see the memset() calls for ivi, vf_vlan_info, node_guid and port_guid a few lines above. vf_broadcast was simply missed when it was added. Reachability: any unprivileged local process can open AF_NETLINK / NETLINK_ROUTE without capabilities and send RTM_GETLINK with an IFLA_EXT_MASK attribute carrying RTEXT_FILTER_VF. The kernel walks each VF and emits IFLA_VF_BROADCAST, leaking 26 bytes of stack per VF per request. Stack residue at this call site can include return addresses and transient sensitive data; KASAN with stack instrumentation, or KMSAN, will flag the nla_put() when reproduced. Zero the on-stack struct before the partial memcpy, matching the existing pattern used for the other vf_* structs in the same function.
Fixes and workarounds
Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Fix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67Affected products and versions
| Product | Versions | Authority |
|---|---|---|
| Linux Linux |
≥ 75345f888f700c4ab2448287e35d48c760b202e6; < 14271b401ec6a4bf0d88054106fc2956084717e1 (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < cccce3190ba4356432b9f22369b56123d3d89f0d (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < a44fbb631cba646532f3948636626f81717365a7 (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < 0653c0516234c8258975d268a749115fc0f0ff00 (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < c5b1b92ab7eff1a6e8c507ddde6fd02fabd0cfa8 (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < fbe0e6197225e6a83cf113a67a4b425f8de0bcd5 (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < 38bcc21f52246badb3154b6158dcb381d98de011 (affected, git) ≥ 75345f888f700c4ab2448287e35d48c760b202e6; < 4b9e327991815e128ad3af75c3a04630a63ce3e0 (affected, git) Other versions: unaffected |
CNA: Linux |
| Linux Linux |
5.3 (affected) ≥ 0; < 5.3 (unaffected, semver) ≥ 5.10.258; ≤ 5.10.* (unaffected, semver) ≥ 5.15.209; ≤ 5.15.* (unaffected, semver) ≥ 6.1.175; ≤ 6.1.* (unaffected, semver) ≥ 6.6.140; ≤ 6.6.* (unaffected, semver) ≥ 6.12.88; ≤ 6.12.* (unaffected, semver) ≥ 6.18.30; ≤ 6.18.* (unaffected, semver) ≥ 7.0.7; ≤ 7.0.* (unaffected, semver) ≥ 7.1; ≤ * (unaffected, original_commit_for_fix) Other versions: affected |
CNA: Linux |
| SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) Siemens |
≥ V3.1.6; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AB0) Siemens |
≥ V3.1.7; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) Siemens |
≥ V3.1.6; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518-4 PN/DP MFP (6ES7518-4AX00-1AC0) Siemens |
≥ V3.1.7; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0) Siemens |
≥ V3.1.6; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AB0) Siemens |
≥ V3.1.7; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AC0) Siemens |
≥ V3.1.6; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP (6ES7518-4FX00-1AC0) Siemens |
≥ V3.1.7; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIPLUS S7-1500 CPU 1518-4 PN/DP MFP (6AG1518-4AX00-4AC0) Siemens |
≥ V3.1.6; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
| SIPLUS S7-1500 CPU 1518-4 PN/DP MFP (6AG1518-4AX00-4AC0) Siemens |
≥ V3.1.7; < * (affected, custom)
Other versions: unknown |
ADP: siemens-SADP |
Version ranges are source assertions. Check the vendor advisory and your installed configuration before determining exposure.
NVD applicability configurations (1)
These expressions retain AND/OR operators, negation, and required environmental products. A listed product is not sufficient to establish exposure when additional conditions apply.
[
{
"negate": false,
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.258",
"versionStartIncluding": "5.3",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.209",
"versionStartIncluding": "5.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.175",
"versionStartIncluding": "5.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.140",
"versionStartIncluding": "6.2",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.88",
"versionStartIncluding": "6.7",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.30",
"versionStartIncluding": "6.13",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.0.7",
"versionStartIncluding": "6.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
],
"operator": "OR"
}
]CVSS assessments
| Version / score | Vector | Authority |
|---|---|---|
| 3.1 / 5.5 medium |
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H | NVD: [email protected] |
Exploit evidence
No exploit evidence in collected sources. This is not proof of no exploitation.
References
- https://git.kernel.org/stable/c/14271b401ec6a4bf0d88054106fc2956084717e1CNA: Linux
- https://git.kernel.org/stable/c/cccce3190ba4356432b9f22369b56123d3d89f0dCNA: Linux
- https://git.kernel.org/stable/c/a44fbb631cba646532f3948636626f81717365a7CNA: Linux
- https://git.kernel.org/stable/c/0653c0516234c8258975d268a749115fc0f0ff00CNA: Linux
- https://git.kernel.org/stable/c/c5b1b92ab7eff1a6e8c507ddde6fd02fabd0cfa8CNA: Linux
- https://git.kernel.org/stable/c/fbe0e6197225e6a83cf113a67a4b425f8de0bcd5CNA: Linux
- https://git.kernel.org/stable/c/38bcc21f52246badb3154b6158dcb381d98de011CNA: Linux
- https://git.kernel.org/stable/c/4b9e327991815e128ad3af75c3a04630a63ce3e0CNA: Linux
- https://cert-portal.siemens.com/productcert/html/ssa-019113.htmlADP: siemens-SADP
- https://cert-portal.siemens.com/productcert/html/ssa-457936.htmlADP: siemens-SADP
- https://git.kernel.org/stable/c/0653c0516234c8258975d268a749115fc0f0ff00416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/14271b401ec6a4bf0d88054106fc2956084717e1416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/38bcc21f52246badb3154b6158dcb381d98de011416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/4b9e327991815e128ad3af75c3a04630a63ce3e0416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/a44fbb631cba646532f3948636626f81717365a7416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/c5b1b92ab7eff1a6e8c507ddde6fd02fabd0cfa8416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/cccce3190ba4356432b9f22369b56123d3d89f0d416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://git.kernel.org/stable/c/fbe0e6197225e6a83cf113a67a4b425f8de0bcd5416baaa9-dc9f-4396-8d5f-8c081fb06d67 · Patch
- https://cert-portal.siemens.com/productcert/html/ssa-019113.html0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
- https://cert-portal.siemens.com/productcert/html/ssa-457936.html0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
For agents and automation
Read public disclosures for free as Markdown or JSON. Compatible browsers also expose native WebMCP tools to search disclosures, read this page, and discover API access.
Use the ontology-linked Cyber API with x402 pay per request, or a Y2 Pro or Elite API key with the intel:cyber scope.
Endpoints and access details
https://api.y2.dev/api/v2/cyber/cveshttps://api.y2.dev/api/v2/cyber/cves/{cveId}
A workspace owner or admin can create a Pro or Elite API key. Send Authorization: Bearer <Y2_API_KEY> from your trusted agent runtime.
For x402, omit Authorization and read the HTTP 402 payment challenge before signing a retry. Public browser tools do not make payments.