{"id":"CVE-2021-47107","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nNFSD: Fix READDIR buffer overflow\n\nIf a client sends a READDIR count argument that is too small (say,\nzero), then the buffer size calculation in the new init_dirlist\nhelper functions results in an underflow, allowing the XDR stream\nfunctions to write beyond the actual buffer.\n\nThis calculation has always been suspect. NFSD has never sanity-\nchecked the READDIR count argument, but the old entry encoders\nmanaged the problem correctly.\n\nWith the commits below, entry encoding changed, exposing the\nunderflow to the pointer arithmetic in xdr_reserve_space().\n\nModern NFS clients attempt to retrieve as much data as possible\nfor each READDIR request. Also, we have no unit tests that\nexercise the behavior of READDIR at the lower bound of @count\nvalues. Thus this case was missed during testing.","modified":"2026-03-15T22:43:05.351337Z","published":"2024-03-04T19:15:18.793Z","related":["SUSE-SU-2024:1320-1","SUSE-SU-2024:1321-1","SUSE-SU-2024:1466-1","SUSE-SU-2024:1480-1","SUSE-SU-2024:1490-1"],"references":[{"type":"FIX","url":"https://git.kernel.org/stable/c/53b1119a6e5028b125f431a0116ba73510d82a72"},{"type":"FIX","url":"https://git.kernel.org/stable/c/9e291a6a28d32545ed2fd959a8165144d1724df1"},{"type":"FIX","url":"https://git.kernel.org/stable/c/eabc0aab98e5218ceecd82069b0d6fdfff5ee885"}],"affected":[{"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-47107.json","unresolved_ranges":[{"events":[{"introduced":"5.13"},{"fixed":"5.15.12"}]},{"events":[{"introduced":"0"},{"last_affected":"5.16-rc1"}]},{"events":[{"introduced":"0"},{"last_affected":"5.16-rc2"}]},{"events":[{"introduced":"0"},{"last_affected":"5.16-rc3"}]},{"events":[{"introduced":"0"},{"last_affected":"5.16-rc4"}]},{"events":[{"introduced":"0"},{"last_affected":"5.16-rc5"}]},{"events":[{"introduced":"0"},{"last_affected":"5.16-rc6"}]}]}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H"}]}