Vulnerability · Published Apr 22, 2026 · Assigned by Linux
CVE-2026-31469virtio_net: Fix UAF on dst_ops when IFF_XMIT_DST_RELEASE is cleared and napi_tx is false
High 7.8
In plain English
A high-severity use-after-free in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.1% (higher than 3% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In the Linux kernel, the following vulnerability has been resolved: virtio_net: Fix UAF on dst_ops when IFF_XMIT_DST_RELEASE is cleared and napi_tx is false A UAF issue occurs when the virtio_net driver is configured with napi_tx=N and the device's IFF_XMIT_DST_RELEASE flag is cleared (e.g., during the configuration of tc route filter rules). When IFF_XMIT_DST_RELEASE is removed from the net_device, the network stack expects the driver to hold the reference to skb->dst until the packet is fully transmitted and freed. In virtio_net with napi_tx=N, skbs may remain in the virtio transmit ring for an extended period. If the network namespace is destroyed while these skbs are still pending, the corresponding dst_ops structure has freed. When a subsequent packet is transmitted, free_old_xmit() is triggered to clean up old skbs. It then calls dst_release() on the skb associated with the stale dst_entry. Since the dst_ops (referenced by the dst_entry) has already been freed, a UAF kernel paging request occurs. fix it by adds skb_dst_drop(skb) in start_xmit to explicitly release the dst reference before the skb is queued in virtio_net. Call Trace: Unable to handle kernel paging request at virtual address ffff80007e150000 CPU: 2 UID: 0 PID: 6236 Comm: ping Kdump: loaded Not tainted 7.0.0-rc1+ #6 PREEMPT ... percpu_counter_add_batch+0x3c/0x158 lib/percpu_counter.c:98 (P) dst_release+0xe0/0x110 net/core/dst.c:177 skb_release_head_state+0xe8/0x108 net/core/skbuff.c:1177 sk_skb_reason_drop+0x54/0x2d8 net/core/skbuff.c:1255 dev_kfree_skb_any_reason+0x64/0x78 net/core/dev.c:3469 napi_consume_skb+0x1c4/0x3a0 net/core/skbuff.c:1527 __free_old_xmit+0x164/0x230 drivers/net/virtio_net.c:611 [virtio_net] free_old_xmit drivers/net/virtio_net.c:1081 [virtio_net] start_xmit+0x7c/0x530 drivers/net/virtio_net.c:3329 [virtio_net] ... Reproduction Steps: NETDEV="enp3s0" config_qdisc_route_filter() { tc qdisc del dev $NETDEV root tc qdisc add dev $NETDEV root handle 1: prio tc filter add dev $NETDEV parent 1:0 \ protocol ip prio 100 route to 100 flowid 1:1 ip route add 192.168.1.100/32 dev $NETDEV realm 100 } test_ns() { ip netns add testns ip link set $NETDEV netns testns ip netns exec testns ifconfig $NETDEV 10.0.32.46/24 ip netns exec testns ping -c 1 10.0.32.1 ip netns del testns } config_qdisc_route_filter test_ns sleep 2 test_ns
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | linux | 6.1.170-1 | DEBIAN-CVE-2026-31469 |
| Debian:13 | linux | 6.12.85-1 | DEBIAN-CVE-2026-31469 |
| Debian:14 | linux | 6.19.11-1 | DEBIAN-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux | 5.15.0-186.196 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux | 6.8.0-136.136 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1112.119 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-aws | 6.8.0-1061.64 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-aws | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-aws-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-aws-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-aws-6.8 | 6.8.0-1061.64~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1117.126 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure | 6.8.0-1063.71 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-azure | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-6.11 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-6.8 | 6.8.0-1063.71~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1117.126 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-fde | 6.8.0-1062.69 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-azure-fde | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-fde-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.8 | 6.8.0-1062.69~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-nvidia | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-azure-nvidia-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1112.122 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-gcp | 6.8.0-1064.72 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-gcp | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-gcp-6.11 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-gcp-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-gcp-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gcp-6.8 | 6.8.0-1064.72~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1108.114 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-gke | 6.8.0-1059.67 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1095.103 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-gkeop | 6.8.0-1046.50 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-hwe-6.11 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-hwe-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-hwe-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-hwe-6.8 | 6.8.0-136.136~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1106.110 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-ibm | 6.8.0-1061.62 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-ibm-6.8 | 6.8.0-1061.62~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-intel-iot-realtime | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1107.113 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1104.109 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-184.194 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-lowlatency | 6.8.0-136.136.2 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-lowlatency-hwe-6.11 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.8 | 6.8.0-136.136.2~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1107.108 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-nvidia | 6.8.0-1059.62 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-nvidia-6.11 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-nvidia-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-nvidia-6.8 | 6.8.0-1059.62~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-nvidia-lowlatency | 6.8.0-1059.62.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1064.66 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-nvidia-tegra | 6.8.0-1030.31 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1053.53 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oem-6.11 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oem-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oem-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oem-6.8 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1109.115 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oracle | 6.8.0-1058.61 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-oracle | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oracle-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-oracle-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-oracle-6.8 | 6.8.0-1058.61~22.04.1 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1106.109 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-raspi | 6.8.0-1061.65 | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-raspi | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-realtime | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:25.10 | linux-riscv | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-riscv-6.14 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-riscv-6.17 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-riscv-6.8 | 6.8.0-136.136~22.04.3 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-vmware | 6.8.0-1008.8 | UBUNTU-CVE-2026-31469 |
| Ubuntu:24.04:LTS | linux-xilinx | 6.8.0-1033.34 | UBUNTU-CVE-2026-31469 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1075.79 | UBUNTU-CVE-2026-31469 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | f2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before be0e63f3b97bbaf453c542e8a15ba2a536e2ac01f2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before c1ec36cb3768574b916f20d2d7415fd14fa1bf12f2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before 8a4790850e710fd6771e4d2112168ed1dd6c0e54f2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before fedd2e1630cac920844997227ccbe7b26a76375af2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before f04733c4dc40c43899c3d1c97afbae5831a3770ff2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before 9a18629f2525781f0f3dda7be72b204e4cf77d08f2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before 63d45077b97bb0e0fe0c75931acbbca7a47af141f2fc6a54585a1be6669613a31fbaba2ecbadcd36 – before ba8bda9a0896746053aa97ac6c3e08168729172c |
| Linux | Linux | 2.6.26 |
Weakness: CWE-416 · Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
References
- https://git.kernel.org/stable/c/be0e63f3b97bbaf453c542e8a15ba2a536e2ac01
- https://git.kernel.org/stable/c/c1ec36cb3768574b916f20d2d7415fd14fa1bf12
- https://git.kernel.org/stable/c/8a4790850e710fd6771e4d2112168ed1dd6c0e54
- https://git.kernel.org/stable/c/fedd2e1630cac920844997227ccbe7b26a76375a
- https://git.kernel.org/stable/c/f04733c4dc40c43899c3d1c97afbae5831a3770f
- https://git.kernel.org/stable/c/9a18629f2525781f0f3dda7be72b204e4cf77d08
- https://git.kernel.org/stable/c/63d45077b97bb0e0fe0c75931acbbca7a47af141
- https://git.kernel.org/stable/c/ba8bda9a0896746053aa97ac6c3e08168729172c
- https://cert-portal.siemens.com/productcert/html/ssa-082556.html
- https://cert-portal.siemens.com/productcert/html/ssa-019113.html
- https://cert-portal.siemens.com/productcert/html/ssa-457936.html