Re: [PATCH v2] cifs: fix use-after-free on the link name

From: Paulo Alcantara
Date: Fri Nov 04 2022 - 13:56:06 EST


ChenXiaoSong <chenxiaosong2@xxxxxxxxxx> writes:

> When opened a symlink, link name is from 'inode->i_link', but it may be
> reset to a new value when revalidate the dentry. If some processes get the
> link name on the race scenario, then UAF will happen on link name.
>
> Fix this by implementing 'get_link' interface to duplicate the link name.
>
> Fixes: 76894f3e2f71 ("cifs: improve symlink handling for smb2+")
> Signed-off-by: ChenXiaoSong <chenxiaosong2@xxxxxxxxxx>
> ---
> fs/cifs/cifsfs.c | 26 +++++++++++++++++++++++++-
> fs/cifs/inode.c | 5 -----
> 2 files changed, 25 insertions(+), 6 deletions(-)

Reviewed-by: Paulo Alcantara (SUSE) <pc@xxxxxx>