CVE-2023-53549

Summary

In the Linux kernel, the following vulnerability has been resolved:

netfilter: ipset: Rework long task execution when adding/deleting entries

When adding/deleting large number of elements in one step in ipset, it can take a reasonable amount of time and can result in soft lockup errors. The patch 5f7b51bf09ba ("netfilter: ipset: Limit the maximal range of consecutive elements to add/delete") tried to fix it by limiting the max elements to process at all. However it was not enough, it is still possible that we get hung tasks. Lowering the limit is not reasonable, so the approach in this patch is as follows: rely on the method used at resizing sets and save the state when we reach a smaller internal batch limit, unlock/lock and proceed from the saved state. Thus we can avoid long continuous tasks and at the same time removed the limit to add/delete large number of elements in one step.

The nfnl mutex is held during the whole operation which prevents one to issue other ipset commands in parallel.

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxe62e62ea912a49f7230620f1bdc20410b943a44c < ee756980e491c829ba0495bb420b7224a9ee26b2affected
LinuxLinux5f7b51bf09baca8e4f80cbe879536842bafb5f31 < a1e1521b463968b4eca7163f61fb6cc54d008061affected
LinuxLinux5f7b51bf09baca8e4f80cbe879536842bafb5f31 < 24a828f5a54bdeca0846526860d72b3766c5fe95affected
LinuxLinux5f7b51bf09baca8e4f80cbe879536842bafb5f31 < 8964cc36ba011dc0e1041131fa2e91fb4c2a811baffected
LinuxLinux5f7b51bf09baca8e4f80cbe879536842bafb5f31 < 5e29dc36bd5e2166b834ceb19990d9e68a734d7daffected
LinuxLinuxe0f824abe0f412f769fb5468b36c2471430bd885affected
LinuxLinux5.10.157 < 5.10.163affected
LinuxLinux5.13.14 < 5.14affected
LinuxLinux5.14affected
LinuxLinux0 < 5.14unaffected
LinuxLinux5.10.163 <= 5.10.*unaffected
LinuxLinux5.15.87 <= 5.15.*unaffected
LinuxLinux6.0.19 <= 6.0.*unaffected
LinuxLinux6.1.5 <= 6.1.*unaffected
LinuxLinux6.2 <= *unaffected

Weaknesses

References