netfilter: xt_owner: Fix for unsafe access of sk->sk_socket
authorPhil Sutter <phil@nwl.cc>
Tue, 5 Dec 2023 20:58:12 +0000 (21:58 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Dec 2023 17:39:11 +0000 (18:39 +0100)
commit7a63521ed0413e99ad117efab164e7e12b120660
treeb6249f2bd3bea25d27f3d56f350eb74074d06b02
parent3176160c22d94eecd0032b392886f8a0fc32c26e
netfilter: xt_owner: Fix for unsafe access of sk->sk_socket

[ Upstream commit 7ae836a3d630e146b732fe8ef7d86b243748751f ]

A concurrently running sock_orphan() may NULL the sk_socket pointer in
between check and deref. Follow other users (like nft_meta.c for
instance) and acquire sk_callback_lock before dereferencing sk_socket.

Fixes: 0265ab44bacc ("[NETFILTER]: merge ipt_owner/ip6t_owner in xt_owner")
Reported-by: Jann Horn <jannh@google.com>
Signed-off-by: Phil Sutter <phil@nwl.cc>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/netfilter/xt_owner.c