Linux vulnerability

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_queue: hold bridge skb->dev while queued br_pass_frame_up() rewrites skb->dev from the ingress port to the bridge master before queueing bridge LOCAL_IN packets. NFQUEUE only holds references on state.in/out and bridge physdevs, so a queued bridge packet can retain a freed bridge master in skb->dev until reinjection. When the verdict is reinjected later, br_netif_receive_skb() re-enters the receive path with skb->dev still pointing at the freed bridge master, triggering a use-after-free. Store skb->dev in the queue entry, hold a reference on it for the queue lifetime, and use the saved device when dropping queued packets during NETDEV_DOWN handling.

Published 24 Jun 2026Updated 8 Sep 20269 sources
CVSS 7.8

What happened

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_queue: hold bridge skb->dev while queued br_pass_frame_up() rewrites skb->dev from the ingress port to the bridge master before queueing bridge LOCAL_IN packets. NFQUEUE only holds references on state.in/out and bridge physdevs, so a queued bridge packet can retain a freed bridge master in skb->dev until reinjection. When the verdict is reinjected later, br_netif_receive_skb() re-enters the receive path with skb->dev still pointing at the freed bridge master, triggering a use-after-free. Store skb->dev in the queue entry, hold a reference on it for the queue lifetime, and use the saved device when dropping queued packets during NETDEV_DOWN handling.

Affected versions

Linux: ac28634456867b23b95faccba7997a62ec430603 through before 950d809f154dca04e5fbe5d3c8b9c5e44769cd57 (git); ac28634456867b23b95faccba7997a62ec430603 through before a698ac8ab2561cf575d2d9f34095032651dd952e (git); ac28634456867b23b95faccba7997a62ec430603 through before 19924bdd8a45ebc72a7b84c57fd63057d1dc75ac (git); ac28634456867b23b95faccba7997a62ec430603 through before 1e5e20031c5eee8d2e490a90ff4d6a2feecfc3be (git); ac28634456867b23b95faccba7997a62ec430603 through before 3823c27099cfe2482299065814adbaa771be9644 (git); ac28634456867b23b95faccba7997a62ec430603 through before 15d464265120ab9818bd673af301deee09bedab2 (git); ac28634456867b23b95faccba7997a62ec430603 through before 3fb0f5c0f64162a8c3f25616a4f1e340b921737f (git); ac28634456867b23b95faccba7997a62ec430603 through before e196115ec330a18de415bdb9f5071aa9f08e53ce (git); 4.7; V3.1.6 through before * (custom) Fixed: See vendor advisory.

Why it matters

Review the vendor advisory and exposure of the affected product to determine operational impact.

Detection & mitigation

  • Apply vendor-provided updates or mitigations.
  • Review affected product exposure and access logs.

Public PoC references

No public PoC reference has passed the current publication threshold.