Description: | In the Linux kernel, the following vulnerability has been resolved:
nfsd: fix use-after-free due to delegation race A delegation break
could arrive as soon as we've called vfs_setlease. A delegation break
runs a callback which immediately (in nfsd4_cb_recall_prepare) adds
the delegation to del_recall_lru. If we then exit nfs4_set_delegation
without hashing the delegation, it will be freed as soon as the
callback is done with it, without ever being removed from
del_recall_lru. Symptoms show up later as use-after-free or list
corruption warnings, usually in the laundromat thread. I suspect
aba2072f4523 "nfsd: grant read delegations to clients holding writes"
made this bug easier to hit, but I looked as far back as v3.0 and it
looks to me it already had the same problem. So I'm not sure where the
bug was introduced; it may have been there from the beginning.
|