Description
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 products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
ac28634456867b23b95faccba7997a62ec430603 to < 950d809f154dca04e5fbe5d3c8b9c5e44769cd57affectedac28634456867b23b95faccba7997a62ec430603 to < a698ac8ab2561cf575d2d9f34095032651dd952eaffectedac28634456867b23b95faccba7997a62ec430603 to < 19924bdd8a45ebc72a7b84c57fd63057d1dc75acaffectedac28634456867b23b95faccba7997a62ec430603 to < 1e5e20031c5eee8d2e490a90ff4d6a2feecfc3beaffectedac28634456867b23b95faccba7997a62ec430603 to < 3823c27099cfe2482299065814adbaa771be9644affectedac28634456867b23b95faccba7997a62ec430603 to < 15d464265120ab9818bd673af301deee09bedab2affectedac28634456867b23b95faccba7997a62ec430603 to < 3fb0f5c0f64162a8c3f25616a4f1e340b921737faffectedac28634456867b23b95faccba7997a62ec430603 to < e196115ec330a18de415bdb9f5071aa9f08e53ceaffected
Linux Linux
Default version status: affected
4.7affected0 to < 4.7unaffected5.10.259 to ≤ 5.10.*unaffected5.15.209 to ≤ 5.15.*unaffected6.1.175 to ≤ 6.1.*unaffected6.6.142 to ≤ 6.6.*unaffected6.12.92 to ≤ 6.12.*unaffected6.18.34 to ≤ 6.18.*unaffected7.0.11 to ≤ 7.0.*unaffected7.1 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/950d809f154dca04e5fbe5d3c8b9c5e44769cd57 ↗
- https://git.kernel.org/stable/c/a698ac8ab2561cf575d2d9f34095032651dd952e ↗
- https://git.kernel.org/stable/c/19924bdd8a45ebc72a7b84c57fd63057d1dc75ac ↗
- https://git.kernel.org/stable/c/1e5e20031c5eee8d2e490a90ff4d6a2feecfc3be ↗
- https://git.kernel.org/stable/c/3823c27099cfe2482299065814adbaa771be9644 ↗
- https://git.kernel.org/stable/c/15d464265120ab9818bd673af301deee09bedab2 ↗
- https://git.kernel.org/stable/c/3fb0f5c0f64162a8c3f25616a4f1e340b921737f ↗
- https://git.kernel.org/stable/c/e196115ec330a18de415bdb9f5071aa9f08e53ce ↗
- https://cert-portal.siemens.com/productcert/html/ssa-019113.html ↗
- https://cert-portal.siemens.com/productcert/html/ssa-457936.html ↗