Linux Kernel IPvlan Per-Port Address Lock Vulnerability

Vulnerability

A vulnerability exists in the Linux kernel's IPvlan implementation, where the address lock is applied per device instead of per port. This issue can lead to race conditions and false negatives when checking if an address is in use, particularly for IPv6. The vulnerability arises because certain address management functions can be called without the necessary locks, allowing concurrent modifications that could disrupt normal operations.

Impact

The vulnerability can cause race conditions and incorrect status reports regarding address usage, potentially leading to improper handling of network traffic or device management.

Reproduction

The vulnerability can be reproduced by modifying IPvlan addresses on different CPU cores simultaneously, particularly for IPv6 addresses. This can be done by creating a network device that uses IPvlan and then adding or removing IPv6 addresses while the device is active.

Remediation

The vulnerability has been addressed by changing the address lock to be per port and ensuring that all modifications to the address list are properly synchronized. Users should upgrade to the latest version of the Linux kernel where this fix has been applied.

Added: Feb 4, 2026, 5:34 PM
Updated: Feb 4, 2026, 5:34 PM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
1.9
exploitability
3.9
remediation
7.7
relevance
2.7
threat
4.8
urgency
2.9
incentive
0.0

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.