CVE-2025-21920: vlan: enforce underlying device type
In the Linux kernel, the following vulnerability has been resolved:
vlan: enforce underlying device type
Currently, VLAN devices can be created on top of non-ethernet devices.
Besides the fact that it doesn't make much sense, this also causes a
bug which leaks the address of a kernel function to usermode.
When creating a VLAN device, we initialize GARP (garp_init_applicant)
and MRP (mrp_init_applicant) for the underlying device.
As part of the initialization process, we add the multicast address of
each applicant to the underlying device, by calling dev_mc_add.
__dev_mc_add uses dev->addr_len to determine the length of the new
multicast address.
This causes an out-of-bounds read if dev->addr_len is greater than 6,
since the multicast addresses provided by GARP and MRP are only 6
bytes long.
This behaviour can be reproduced using the following commands:
ip tunnel add gretest mode ip6gre local ::1 remote ::2 dev lo
ip l set up dev gretest
ip link add link gretest name vlantest type vlan id 100
Then, the following command will display the address of garp_pdu_rcv:
ip maddr show | grep 01:80:c2:00:00:21
Fix the bug by enforcing the type of the underlying device during VLAN
device initialization.
Security readout for executives and security teams
Plain-English summary
CVE-2025-21920 is a Linux kernel VLAN bug. Creating a VLAN on a non-Ethernet underlying device can trigger an out-of-bounds read and leak a kernel function address to user mode. The CVSS score is 7.1 high, but the provided sources do not show active exploitation.
Executive priority
Treat this as high priority for shared Linux infrastructure, container platforms, and systems with delegated network administration rights. It is not evidenced as internet-remote or actively exploited in the supplied sources, but kernel information disclosure and availability impact justify prompt patch planning.
Technical view
The VLAN initialization path sets up GARP and MRP applicants, then adds multicast addresses to the lower device. If the lower device has an address length greater than six bytes, fixed six-byte multicast addresses can be read out of bounds. The kernel fix enforces the underlying device type during VLAN device initialization.
Likely exposure
Exposure is most relevant on Linux systems running affected kernels where a local low-privileged user or workload can create network devices such as VLANs over non-Ethernet devices. Container hosts and shared Linux systems deserve priority review if they delegate network administration capabilities.
Exploitation context
The vulnerability is local, low complexity, low privilege, and requires no user interaction per CVSS. The bundle states KEV is false, and no cited source provided here confirms active exploitation. The public description includes a reproduction, so defenders should assume the behavior is understandable to researchers.
Researcher notes
The root issue is CWE-125 in VLAN setup over invalid lower-device types. The security-relevant result is kernel address disclosure through multicast address handling, with CVSS indicating high confidentiality and availability impact. Evidence for exact exploitability beyond the described local trigger is limited in the supplied bundle.
Mitigation direction
Update to vendor kernel packages containing the stable Linux fixes.
For Debian LTS systems, review the cited Debian advisories and apply relevant updates.
Until patched, restrict untrusted users or workloads from creating VLAN and tunnel network devices.
Review containers and services granted network administration capabilities.
Monitor vendor kernel guidance for branch-specific fixed versions.
Validation and detection
Inventory Linux kernel versions across servers, appliances, and container hosts.
Check whether deployed kernels include the referenced stable commits or distribution backports.
Identify systems where untrusted users or workloads have network device creation privileges.
Confirm Debian LTS hosts have applied the relevant May 2025 security updates.
Record any compensating controls limiting local network administration capability.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-125: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-125 · source CWE mapping
Out-of-bounds Read
Out-of-bounds Read represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.