Linux: netfilter: flowtable: generalize pending status bit
What fixes it
- 4d52b72f3aa68ad0536444e36530bda75070194cLinuxCVE List
- 4033e1a9262c57dfbfc594a591a50fcba63c531aLinuxCVE List
- 7c549fb7eecd01fdba7c0d12c01da876ef8a3214LinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
netfilter: flowtable: generalize pending status bit
Rename NF_FLOW_HW_PENDING to NF_FLOW_PENDING and use it to inhibit the flowtable GC worker until pending hw offload work has been completed.
Apparently, nf_flow_offload_stats() can schedule work to retrieve stats while the flow is being removed by GC.
And this bit can also be used in a follow up patch to disable GC until the flow has been fully added in both directions.
Revert the reordering done in commit d644b23afe1e ("netfilter: flowtable: publish HW_DEAD after worker is done") to prevent a race between GC and hw offload handler.
Text from CVE List
Affected versions 12
- Linuxaffected: 2c8897953f3b2ff5498f3f275708a742bfcdbc24 before f7e292f3c8c853f27a1af7eaf3428a0e76fe5fccCVE List
- Linuxaffected: 2c8897953f3b2ff5498f3f275708a742bfcdbc24 before 4d52b72f3aa68ad0536444e36530bda75070194cCVE List
- Linuxaffected: 2c8897953f3b2ff5498f3f275708a742bfcdbc24 before 4033e1a9262c57dfbfc594a591a50fcba63c531aCVE List
- Linuxaffected: 2c8897953f3b2ff5498f3f275708a742bfcdbc24 before a2cac45848d1cf31ed190db30f90ba8211e9a8caCVE List
- Linuxaffected: 2c8897953f3b2ff5498f3f275708a742bfcdbc24 before 7c549fb7eecd01fdba7c0d12c01da876ef8a3214CVE List
- Linuxaffected: 5.7CVE List
- Linuxunaffected: all versions before 5.7CVE List
- Linuxunaffected: 6.6.160 through 6.6.*CVE List
- Linuxunaffected: 6.12.113 through 6.12.*CVE List
- Linuxunaffected: 6.18.56 through 6.18.*CVE List
- Linuxunaffected: 7.2.10 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 5
- git.kernel.org/stable/c/f7e292f3c8c853f27a1af7eaf3428a0e76fe5fccReferencevia CVE List
- git.kernel.org/stable/c/4d52b72f3aa68ad0536444e36530bda75070194cReferencevia CVE List
- git.kernel.org/stable/c/4033e1a9262c57dfbfc594a591a50fcba63c531aReferencevia CVE List
- git.kernel.org/stable/c/a2cac45848d1cf31ed190db30f90ba8211e9a8caReferencevia CVE List
- git.kernel.org/stable/c/7c549fb7eecd01fdba7c0d12c01da876ef8a3214Referencevia CVE List