linux/fs/fuse/inode.c
Al Viro bfbab62ca6 fuse: fix UAF in rcu pathwalks
[ Upstream commit 053fc4f755 ]

->permission(), ->get_link() and ->inode_get_acl() might dereference
->s_fs_info (and, in case of ->permission(), ->s_fs_info->fc->user_ns
as well) when called from rcu pathwalk.

Freeing ->s_fs_info->fc is rcu-delayed; we need to make freeing ->s_fs_info
and dropping ->user_ns rcu-delayed too.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-09-04 13:23:23 +02:00

2035 lines
48 KiB