[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200221105104.GB14608@duo.ucw.cz>
Date: Fri, 21 Feb 2020 11:51:04 +0100
From: Pavel Machek <pavel@...x.de>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Cc: linux-kernel@...r.kernel.org, stable@...r.kernel.org,
Dan Carpenter <dan.carpenter@...cle.com>,
"J. Bruce Fields" <bfields@...hat.com>,
Sasha Levin <sashal@...nel.org>
Subject: Re: [PATCH 4.19 011/191] nfsd4: avoid NULL deference on strange COPY
compounds
Hi!
> With cross-server COPY we've introduced the possibility that the current
> or saved filehandle might not have fh_dentry/fh_export filled in, but we
> missed a place that assumed it was. I think this could be triggered by
> a compound like:
>
> PUTFH(foreign filehandle)
> GETATTR
> SAVEFH
> COPY
>
> First, check_if_stalefh_allowed sets no_verify on the first (PUTFH) op.
> Then op_func = nfsd4_putfh runs and leaves current_fh->fh_export NULL.
> need_wrongsec_check returns true, since this PUTFH has OP_IS_PUTFH_LIKE
> set and GETATTR does not have OP_HANDLES_WRONGSEC set.
>
> We should probably also consider tightening the checks in
> check_if_stalefh_allowed and double-checking that we don't assume the
> filehandle is verified elsewhere in the compound. But I think this
> fixes the immediate issue.
>
> Reported-by: Dan Carpenter <dan.carpenter@...cle.com>
> Fixes: 4e48f1cccab3 "NFSD: allow inter server COPY to have... "
AFAICT 4e48f1cccab3 "NFSD: allow inter server COPY to have... " is not
part of 4.19 series, so this should not be needed in 4.19.
Best regards,
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Download attachment "signature.asc" of type "application/pgp-signature" (196 bytes)
Powered by blists - more mailing lists