9.8 CRITICAL
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): None (N)
- User Interaction (UI): None (N)
- Scope (S): Unchanged (U)
- Confidentiality (C): High (H)
- Integrity (I): High (H)
- Availability (A): High (H)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): None (N)
- Modified Confidentiality (MC): High (H)
- Modified Scope (MS): Unchanged (U)
- Modified Integrity (MI): High (H)
- Modified Availability (MA): High (H)
Activity log
- Created & dismissed (max. allowed matches exceeded) suggestion
NFSD: Fix SECINFO_NO_NAME decode error cleanup
In the Linux kernel, the following vulnerability has been resolved: NFSD: Fix SECINFO_NO_NAME decode error cleanup nfsd4_decode_secinfo_no_name() currently initializes sin_exp after decoding sin_style. If the XDR stream is truncated, the decoder returns nfserr_bad_xdr before sin_exp is initialized. Since commit 3fdc54646234 ("NFSD: Reduce amount of struct nfsd4_compoundargs that needs clearing"), the inline iops array is not cleared between RPC calls. A failed SECINFO_NO_NAME decode can therefore leave sin_exp holding stale union contents from a previous operation. The error response path still invokes nfsd4_secinfo_no_name_release(), which calls exp_put() on a non-NULL sin_exp. Initialize sin_exp before the first failable decode step, matching nfsd4_decode_secinfo().
References
Affected products
- <8836405abdc53ca3dd5fc68b2cf6f8f012fad011
- <5ec37edcb534f3fc92304be236d37f08e6545585
- =<7.1.*
- =<6.1.*
- =<5.15.*
- =<5.10.*
- <161d1aaeb04d620d3692639700512bb5038c1e10
- <5.15.211
- <6.1
- <9e18e83b8846a5c3fe13fc8a464b4865d33996c6
- <c8a24effd96d4779e2ad779654682304491c55a5
- <5.10.260
- ==6.1
- <1e04be34cafae119e82bcaccd6d28a20f72a3647
- <49de5d31dd8fdebf78bdeaf196b0ca5cd5c75439
- =<6.6.*
- <46eb17d45be69d28c7a23ea03283b207426a8232
- =<6.18.*
- =<6.12.*
- =<*