Description
In the Linux kernel, the following vulnerability has been resolved: netfilter: nfnetlink_queue: hold nfnl mutex in event notifier We must serialize the release notifier and the config netlink function. A concurrent thread can issue close() which can call the release function while unrelated socket processes UNBIND request for same portid: Oops: general protection fault, [..] RIP: 0010:__instance_destroy+0x60/0x210 [nfnetlink_queue] Call Trace: nfqnl_recv_config+0x9b0/0xdc0 [nfnetlink_queue] nfnetlink_rcv_msg+0x7c2/0xeb0 ? __pfx_nfnetlink_rcv_msg+0x10/0x10 After this, parallel UNBIND and URELEASE events are impossible. This change isn't nice, but its the shortest fix given instances are not refcounted and the nfnetlink config callback drops the rcu read lock early due to need for sleeping allocations.
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
7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 46432f2e76f7c385d82506304a2928e7d293289faffected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 597320337c3da06c92a9e95cfc755da66fedc476affected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 2e9be1302f25c9be51c2fb8c907bc6d8a1050e33affected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < d559e06a5ab7c064100aafd5c826eadd0f1c6216affected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 1d1184411599a7c2217560bab3bbe641c6d03b95affected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 07a3ec8fdc5a1267c00cd6fd1cf8bbb5cda913c1affected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 8137a39e08e838ced234044384740ceeb99ed388affected7af4cc3fa158ff1dda6e7451c7e6afa6b0bb85cb to < 9461613afc59acef44a0071b0dd5075f6e993ffeaffected
Linux Linux
Default version status: affected
2.6.14affected0 to < 2.6.14unaffected5.10.271 to ≤ 5.10.*unaffected5.15.222 to ≤ 5.15.*unaffected6.1.189 to ≤ 6.1.*unaffected6.6.158 to ≤ 6.6.*unaffected6.12.112 to ≤ 6.12.*unaffected6.18.55 to ≤ 6.18.*unaffected7.2.9 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/46432f2e76f7c385d82506304a2928e7d293289f ↗
- https://git.kernel.org/stable/c/597320337c3da06c92a9e95cfc755da66fedc476 ↗
- https://git.kernel.org/stable/c/2e9be1302f25c9be51c2fb8c907bc6d8a1050e33 ↗
- https://git.kernel.org/stable/c/d559e06a5ab7c064100aafd5c826eadd0f1c6216 ↗
- https://git.kernel.org/stable/c/1d1184411599a7c2217560bab3bbe641c6d03b95 ↗
- https://git.kernel.org/stable/c/07a3ec8fdc5a1267c00cd6fd1cf8bbb5cda913c1 ↗
- https://git.kernel.org/stable/c/8137a39e08e838ced234044384740ceeb99ed388 ↗
- https://git.kernel.org/stable/c/9461613afc59acef44a0071b0dd5075f6e993ffe ↗