← Back to CVE List
CVE-2026-90114NVD
Vulnerability Summary
In the Linux kernel, the following vulnerability has been resolved:
net: bridge: Reject descending VLAN tunnel ranges
A pair of descending VLAN and tunnel IDs can pass the tunnel range span
check. The VLAN subtraction produces a negative int, which is converted
to unsigned when compared with the u32 tunnel ID subtraction. It can
therefore equal the wrapped tunnel ID delta.
The range loop then performs no iterations. Since the batched
notification handling added a post-loop error check, this leaves err
uninitialized and makes the request's return value unpredictable.
Reject descending VLAN ranges before comparing the spans. Valid
ascending and single-entry ranges remain unchanged, while malformed
descending ranges consistently return -EINVAL.
This issue was found by a static analysis checker and confirmed by
manual source review.
net: bridge: Reject descending VLAN tunnel ranges
A pair of descending VLAN and tunnel IDs can pass the tunnel range span
check. The VLAN subtraction produces a negative int, which is converted
to unsigned when compared with the u32 tunnel ID subtraction. It can
therefore equal the wrapped tunnel ID delta.
The range loop then performs no iterations. Since the batched
notification handling added a post-loop error check, this leaves err
uninitialized and makes the request's return value unpredictable.
Reject descending VLAN ranges before comparing the spans. Valid
ascending and single-entry ranges remain unchanged, while malformed
descending ranges consistently return -EINVAL.
This issue was found by a static analysis checker and confirmed by
manual source review.
Affected & Patched Versions
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < 1181f6bad009408a259bab6aaf0681f11b487972
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < 5a8e0e3a18b5e3172343b8479c5d04187f5b4795
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < 0874a6d5275091429ec4c675c54c53a8776665ae
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < 4b0f5b25f114651f03058395b490626c4444875e
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < bd741b819ff1c239d26cc5b0f0e6b1fd4e67ed17
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < c0444d7499f113d6b7803ef0175591464e17525e
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < 434849b21ef56b09d16e6366b2a230002f363e45
- Linux Linux >= 94339443686b36d3223bc032b7947267474e2679 and < b74a072d8fb71d3c9ffba4a17d5943e63266fb38
- Linux Linux >= 5.9
- Linux Linux 1181f6bad009408a259bab6aaf0681f11b487972
- Linux Linux 5a8e0e3a18b5e3172343b8479c5d04187f5b4795
- Linux Linux 0874a6d5275091429ec4c675c54c53a8776665ae
- Linux Linux 4b0f5b25f114651f03058395b490626c4444875e
- Linux Linux bd741b819ff1c239d26cc5b0f0e6b1fd4e67ed17
- Linux Linux c0444d7499f113d6b7803ef0175591464e17525e
- Linux Linux 434849b21ef56b09d16e6366b2a230002f363e45
- Linux Linux b74a072d8fb71d3c9ffba4a17d5943e63266fb38
External References
- https://git.kernel.org/stable/c/1181f6bad009408a259bab6aaf0681f11b487972
- https://git.kernel.org/stable/c/5a8e0e3a18b5e3172343b8479c5d04187f5b4795
- https://git.kernel.org/stable/c/0874a6d5275091429ec4c675c54c53a8776665ae
- https://git.kernel.org/stable/c/4b0f5b25f114651f03058395b490626c4444875e
- https://git.kernel.org/stable/c/bd741b819ff1c239d26cc5b0f0e6b1fd4e67ed17
- https://git.kernel.org/stable/c/c0444d7499f113d6b7803ef0175591464e17525e
- https://git.kernel.org/stable/c/434849b21ef56b09d16e6366b2a230002f363e45
- https://git.kernel.org/stable/c/b74a072d8fb71d3c9ffba4a17d5943e63266fb38