Description
In the Linux kernel, the following vulnerability has been resolved: net/sched: act_ct: preserve tc_skb_cb across defragmentation tcf_ct_handle_fragments() calls nf_ct_handle_fragments() without saving and restoring skb->cb. The defrag helper clears IPCB/IP6CB, which aliases the tc_skb_cb/qdisc_skb_cb control buffer. Fragmented traffic through act_ct therefore loses qdisc metadata such as pkt_segs and can trigger WARN_ON_ONCE() in qdisc_pkt_segs() when panic_on_warn is enabled. Save and restore the full tc_skb_cb around nf_ct_handle_fragments(), matching the pattern used by ovs_ct_handle_fragments().
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
0d76daf2013ce1da20eab5e26bd81d983e1c18fb to < fb080b6f54835d5d4d11ce3122800e6f0f6689e6affectedec624fe740b416fb68d536b37fb8eef46f90b5c2 to < 67d6b00a54446c008f52cf70fc0c2ad0c712f85daffectedec624fe740b416fb68d536b37fb8eef46f90b5c2 to < 2400c4b05d58834b994500a9eec90a37db44187caffectedec624fe740b416fb68d536b37fb8eef46f90b5c2 to < 5c3ae5f6c7c6de73ea9b6a75154fe4ed343e1bacaffectedec624fe740b416fb68d536b37fb8eef46f90b5c2 to < b3d835407846134b0d54637c0281b39bebef831daffectedec624fe740b416fb68d536b37fb8eef46f90b5c2 to < f7f45ceb855d9ba1cba594fb3f383255f7013fadaffectedec624fe740b416fb68d536b37fb8eef46f90b5c2 to < 9092e15defbe6c7bc241c306093ca9d358a578e7affected5.15.13 to < 5.15.217affected
Linux Linux
Default version status: affected
5.16affected0 to < 5.16unaffected5.15.217 to ≤ 5.15.*unaffected6.1.184 to ≤ 6.1.*unaffected6.6.145 to ≤ 6.6.*unaffected6.12.97 to ≤ 6.12.*unaffected6.18.40 to ≤ 6.18.*unaffected7.1.5 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/fb080b6f54835d5d4d11ce3122800e6f0f6689e6 ↗
- https://git.kernel.org/stable/c/67d6b00a54446c008f52cf70fc0c2ad0c712f85d ↗
- https://git.kernel.org/stable/c/2400c4b05d58834b994500a9eec90a37db44187c ↗
- https://git.kernel.org/stable/c/5c3ae5f6c7c6de73ea9b6a75154fe4ed343e1bac ↗
- https://git.kernel.org/stable/c/b3d835407846134b0d54637c0281b39bebef831d ↗
- https://git.kernel.org/stable/c/f7f45ceb855d9ba1cba594fb3f383255f7013fad ↗
- https://git.kernel.org/stable/c/9092e15defbe6c7bc241c306093ca9d358a578e7 ↗