CVEvulnerability
CVE-2025-22103
5.5 MEDIUM
Official page ↗
- Status
- Modified
- Published
- 2025-04-16
- Last modified
- 2026-09-14
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 ([email protected])
- 5.5 MEDIUM — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses
- CWE-476
Description
In the Linux kernel, the following vulnerability has been resolved:
net: fix NULL pointer dereference in l3mdev_l3_rcv
When delete l3s ipvlan:
ip link del link eth0 ipvlan1 type ipvlan mode l3s
This may cause a null pointer dereference:
Call trace:
ip_rcv_finish+0x48/0xd0
ip_rcv+0x5c/0x100
__netif_receive_skb_one_core+0x64/0xb0
__netif_receive_skb+0x20/0x80
process_backlog+0xb4/0x204
napi_poll+0xe8/0x294
net_rx_action+0xd8/0x22c
__do_softirq+0x12c/0x354
This is because l3mdev_l3_rcv() visit dev->l3mdev_ops after
ipvlan_l3s_unregister() assign the dev->l3mdev_ops to NULL. The process
like this:
(CPU1) | (CPU2)
l3mdev_l3_rcv() |
check dev->priv_flags: |
master = skb->dev; |
|
| ipvlan_l3s_unregister()
| set dev->priv_flags
| dev->l3mdev_ops = NULL;
|
visit master->l3mdev_ops |
To avoid this by do not set dev->l3mdev_ops when unregister l3s ipvlan.
Affected configurations
• linux linux kernel (>= 5.1 < 6.12.46)
• linux linux kernel (>= 6.13 < 6.14.2)
Related
Weakness · CWE (1)
- CWE-476 NULL Pointer Dereference weakness
References
- https://git.kernel.org/stable/c/0032c99e83b9ce6d5995d65900aa4b6ffb501cce Patch
- https://git.kernel.org/stable/c/1da52878f7fb74ace304f74325bb89e3e5546b55 git.kernel.org
- https://git.kernel.org/stable/c/52b44d8c653459c658b733d13658afdde45f6836 git.kernel.org
- https://git.kernel.org/stable/c/59599bce44af3df7a215ebc81cb166426e1c9204 Patch
- https://git.kernel.org/stable/c/8da4d7f9141e8dbd3ece2f0e6930a0ea8812c862 git.kernel.org
- https://git.kernel.org/stable/c/d97d6b1bd2b7f2a188d261d44c4519a13b8c406a git.kernel.org
- https://git.kernel.org/stable/c/f9dff65140efc289f01bcf39c3ca66a8806b6132 Patch