CVE-2026-63921
Gravedad CVSS v3.1:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
19/07/2026
Última modificación:
27/07/2026
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
ip6: vti: Use ip6_tnl.net in vti6_siocdevprivate().<br />
<br />
After patch 1/2 in this series, vti6_update() unlinks and relinks<br />
the tunnel through t->net. vti6_siocdevprivate() still uses<br />
dev_net(dev) for the collision lookup. For a tunnel moved through<br />
IFLA_NET_NS_FD, dev_net(dev) is the new netns, not t->net.<br />
<br />
SIOCCHGTUNNEL on a migrated tunnel then runs:<br />
<br />
net = dev_net(dev) /* migrated netns */<br />
t = vti6_locate(net, &p1, false) /* misses target in t->net */<br />
...<br />
t = netdev_priv(dev)<br />
vti6_update(t, &p1, false) /* mutates t->net&#39;s hash */<br />
<br />
A caller in the migrated netns picks params that match a tunnel<br />
in the creation netns. The lookup in dev_net(dev) finds nothing.<br />
vti6_update() prepends the migrated tunnel at the head of the<br />
creation netns hash bucket for those params. Later lookups in<br />
the creation netns resolve to the migrated device. xfrm receive<br />
delivers the matched packets through a device the caller controls.<br />
<br />
Reachable from an unprivileged user namespace (unshare --user<br />
--map-root-user --net). Cross tenant scope on container hosts.<br />
<br />
Switch the SIOCCHGTUNNEL path on a non fallback device to use<br />
t->net for the lookup. The lookup now matches the netns<br />
vti6_update() operates on.<br />
<br />
Also add ns_capable(self->net->user_ns, CAP_NET_ADMIN) before<br />
the lookup. The check at the top of the case is against<br />
dev_net(dev)->user_ns, which after migration is the attacker&#39;s<br />
netns. A caller there can pick params absent from self->net,<br />
the lookup returns NULL, t becomes self, and vti6_update()<br />
inserts the device into the creation netns hash. The new check<br />
requires CAP_NET_ADMIN in the creation netns user_ns too.<br />
<br />
SIOCADDTUNNEL and SIOCCHGTUNNEL on the fallback device keep<br />
dev_net(dev), which equals init_net there.
Impacto
Puntuación base 3.x
8.80
Gravedad 3.x
ALTA
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/1acfb7d9c6fc7e209ed7789392697e97e03edd33
- https://git.kernel.org/stable/c/44d2ff7d2178503b93151140a45dfa2ad49c9906
- https://git.kernel.org/stable/c/596f6354c96a891e58c04a09cbfb7b0d1ec00dab
- https://git.kernel.org/stable/c/853f6ea482dfcd3404bbef458ab4d68364eed838
- https://git.kernel.org/stable/c/8b484efd5cb4eeef9021a661e198edc5349dacf6
- https://git.kernel.org/stable/c/94ff740a7f9ef5c010784a325dca00cbf228f941
- https://git.kernel.org/stable/c/d2236348414bdd6558385f35aa7fdc9bf5634011
- https://git.kernel.org/stable/c/df42ac708acc3399bbb6dc5ca16e0540adda7bbf



