CVE-2026-43234
Medium · 5.5CVSS
5.5
EPSS
0.2%
Published
May 6, 2026
CISA due date
—
Cloudanix analysis
A local user with network-management permissions could make a Linux system’s networking cleanup hang, potentially disrupting services until the system is fixed or restarted.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Medium
What it actually does
This is a local denial-of-service flaw in the Linux kernel team network driver. When a slave interface is removed or moved across network namespaces during team-device teardown, the team driver can emit a NETDEV_CHANGEMTU notification while the slave is being unregistered. That notification can cause IPv4 device state to take an extra netdev reference during unregister, leaving the device with a nonzero usage count. The result is a stuck unregister path, leaked network-device references, hung cleanup of network namespaces or virtual interfaces, and potentially persistent kernel task stalls affecting network management operations. The CVSS vector indicates local access with low privileges and no user interaction, with high availability impact and no direct confidentiality or integrity impact.
Why it matters to the business
Successful exploitation can make affected Linux systems hang or degrade during network interface or namespace cleanup, disrupting workloads that rely on containers, virtual networking, test automation, CI runners, or dynamic network provisioning. Systems using the kernel team driver are most relevant, but exposure may also exist where unprivileged user namespaces or delegated network administration allow local users or containers to create and manipulate network devices. The issue is not listed in CISA KEV, is not known to be used in ransomware campaigns, has very low EPSS, and has no known public exploit maturity in the provided data, so urgency is mainly driven by local multi-tenant risk and operational dependence on Linux network namespace cleanup.
How an attack unfolds
An attacker needs local ability to issue netlink network-configuration operations, typically through CAP_NET_ADMIN in the initial namespace or inside a permitted user/network namespace. They create a team device, attach a slave interface with a specific MTU, create or use another network namespace, move the slave device into that namespace, and then delete the slave device. During this sequence, the team driver unregisters the slave but also triggers an MTU-change notification at the wrong time. Kernel notifier handling initializes or touches IPv4 per-device state and takes a netdev reference, leaving the unregistering device with an outstanding reference. The kernel then waits for the netdev to become free, producing unregister_netdevice/ref_tracker diagnostics and potentially hanging network teardown or accumulating stuck resources. There is no indication from the provided data that remote attackers can exploit this directly, and no named threat actors are associated with it.
How to fix it
Upgrade the Linux kernel to a vendor-supported build that includes the team-driver fix to avoid emitting NETDEV_CHANGEMTU while unregistering a slave device. No exact fixed package versions were provided, so use distribution security advisories and kernel changelogs to identify builds containing the upstream fix for the team driver analogous to the prior bonding-driver correction. Where immediate patching is not possible, reduce exposure by restricting CAP_NET_ADMIN, disabling unprivileged user namespaces where operationally feasible, preventing untrusted users or containers from creating network namespaces and team devices, and avoiding use of the team driver on systems where it is not required. Consider blacklisting or not loading the team kernel module if team networking is unused, after validating there is no production dependency.
How to confirm the fix worked
Confirm remediation by verifying the running kernel version matches a vendor release that includes the fix, not merely that an updated package is installed. Check whether the team module is present or loaded using standard module inventory tools, and review whether local users or containers can obtain CAP_NET_ADMIN or create user/network namespaces. In a controlled nonproduction environment only, attempt the published reproducer pattern: create a team interface, attach a dummy slave with a nondefault MTU, create a network namespace, move the slave into it, and delete the slave. A fixed kernel should complete cleanup without unregister_netdevice wait messages, ref_tracker netdev leaks, hung task reports, or persistent network namespace cleanup stalls. Do not run destructive reproducers on production systems.
Typical attack path
- Obtain local access to a Linux system with permission to create or manipulate network devices, commonly CAP_NET_ADMIN or equivalent permissions inside an enabled user/network namespace.
- Create a team interface using the kernel team driver.
- Create or attach a slave network interface to the team device, potentially with a nondefault MTU.
- Create a separate network namespace.
- Move the slave interface into the new namespace while it is still associated with the team device lifecycle.
- Delete the slave interface from that namespace.
- Trigger the vulnerable unregister path, causing a NETDEV_CHANGEMTU notification during slave unregister and leaving a netdev reference held.
- Cause network-device cleanup to hang or consume kernel resources, resulting in denial of service or operational disruption.
How to detect it
Look for evidence in kernel logs, system journals, audit logs, and container/runtime logs showing network-device manipulation immediately followed by kernel unregister or reference-tracker warnings. Primary log sources include dmesg, /var/log/kern.log, /var/log/messages, journalctl -k, auditd records for iproute2 or netlink operations, sudo logs, shell history where available, and container orchestration audit logs showing privileged containers or CAP_NET_ADMIN grants. Suspicious sequences include creation of team devices, dummy interfaces, network namespaces, moving interfaces between namespaces, and deleting those interfaces, followed by kernel messages such as unregister_netdevice waiting for a device to become free, ref_tracker netdev reports, or stack traces mentioning team_port_del, team_device_event, dev_set_mtu, netif_set_mtu, inetdev_init, or rtnl_newlink. Because exploitation is local and primarily causes availability impact, there may be no network IOC. Focus detection on repeated local invocations of ip link/ip netns commands, unexpected loading or use of the team driver, privileged container starts, and kernel task stalls correlated with network namespace teardown.
- unregister_netdevice: waiting for
- Usage count =
- ref_tracker: netdev@
- team_port_del
- team_device_event
- NETDEV_CHANGEMTU
- inetdev_init
- inetdev_event
- netif_set_mtu
- dev_set_mtu
- rtnl_newlink
- netlink_sendmsg
- ip link add name team
- type team
- ip link add name dummy
- type dummy
- ip netns add
- ip link set dev
- netns
- ip -n
- link del dev
- drivers/net/team/team_core.c
What your security team should do
- Prioritize patching Linux systems that allow local untrusted users, shared shell access, CI jobs, containers, Kubernetes workloads with elevated networking permissions, or any workload with CAP_NET_ADMIN.
- Inventory systems using or loading the team driver and determine whether team networking is required; remove or disable it where unnecessary.
- Restrict CAP_NET_ADMIN and privileged container execution, and review policies that allow user namespaces or network namespace creation by untrusted principals.
- Monitor kernel logs for unregister_netdevice waits, ref_tracker netdev messages, and stack traces involving team_port_del or team_device_event.
- Use compensating controls on multi-tenant hosts before broad kernel rollout: block untrusted creation of team devices, dummy devices, and network namespaces where possible.
- Schedule kernel reboots after installing fixed packages, because the vulnerable code remains active until the fixed kernel is running.
- Treat evidence of repeated local network namespace/device manipulation followed by kernel unregister stalls as potential attempted denial of service, even though no public exploitation or KEV status is reported.
The record
In the Linux kernel, the following vulnerability has been resolved: team: avoid NETDEV_CHANGEMTU event when unregistering slave syzbot is reporting unregister_netdevice: waiting for netdevsim0 to become free. Usage count = 3 ref_tracker: netdev@ffff88807dcf8618 has 1/2 users at __netdev_tracker_alloc include/linux/netdevice.h:4400 [inline] netdev_hold include/linux/netdevice.h:4429 [inline] inetdev_init+0x201/0x4e0 net/ipv4/devinet.c:286 inetdev_event+0x251/0x1610 net/ipv4/devinet.c:1600 notifier_call_chain+0x19d/0x3a0 kernel/notifier.c:85 call_netdevice_notifiers_mtu net/core/dev.c:2318 [inline] netif_set_mtu_ext+0x5aa/0x800 net/core/dev.c:9886 netif_set_mtu+0xd7/0x1b0 net/core/dev.c:9907 dev_set_mtu+0x126/0x260 net/core/dev_api.c:248 team_port_del+0xb07/0xcb0 drivers/net/team/team_core.c:1333 team_del_slave drivers/net/team/team_core.c:1936 [inline] team_device_event+0x207/0x5b0 drivers/net/team/team_core.c:2929 notifier_call_chain+0x19d/0x3a0 kernel/notifier.c:85 call_netdevice_notifiers_extack net/core/dev.c:2281 [inline] call_netdevice_notifiers net/core/dev.c:2295 [inline] __dev_change_net_namespace+0xcb7/0x2050 net/core/dev.c:12592 do_setlink+0x2ce/0x4590 net/core/rtnetlink.c:3060 rtnl_changelink net/core/rtnetlink.c:3776 [inline] __rtnl_newlink net/core/rtnetlink.c:3935 [inline] rtnl_newlink+0x15a9/0x1be0 net/core/rtnetlink.c:4072 rtnetlink_rcv_msg+0x7d5/0xbe0 net/core/rtnetlink.c:6958 netlink_rcv_skb+0x232/0x4b0 net/netlink/af_netlink.c:2550 netlink_unicast_kernel net/netlink/af_netlink.c:1318 [inline] netlink_unicast+0x80f/0x9b0 net/netlink/af_netlink.c:1344 netlink_sendmsg+0x813/0xb40 net/netlink/af_netlink.c:1894 problem. Ido Schimmel found steps to reproduce ip link add name team1 type team ip link add name dummy1 mtu 1499 master team1 type dummy ip netns add ns1 ip link set dev dummy1 netns ns1 ip -n ns1 link del dev dummy1 and also found that the same issue was fixed in the bond driver in commit f51048c3e07b ("bonding: avoid NETDEV_CHANGEMTU event when unregistering slave"). Let's do similar thing for the team driver, with commit ad7c7b2172c3 ("net: hold netdev instance lock during sysfs operations") and commit 303a8487a657 ("net: s/__dev_set_mtu/__netif_set_mtu/") also applied.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|