Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: NFSv4.1: zero referring call lists before decoding decode_cb_sequence_args() allocates csa_rclists with kmalloc_objs(), so each referring_call_list starts uninitialized. decode_rc_list() assigns rcl_refcalls only when rcl_nrefcalls is nonzero. A valid list with zero referring calls therefore leaves the pointer uninitialized, and nfs4_callback_sequence() later passes stale slab contents to kfree(). Allocate csa_rclists with kzalloc_objs() so every rcl_refcalls member is NULL from the beginning, including valid empty referring call lists.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 4aece6a19cf7f474f15eb861ba74db4479884ce3 before ed54460caf5b5aa65ec03c9a6032d831f39f19f5; affected 4aece6a19cf7f474f15eb861ba74db4479884ce3 before 7510a5b9edec9d9536a4e69f10edfb2592e6cf7f; affected 4aece6a19cf7f474f15eb861ba74db4479884ce3 before f4d23937e1c41995c2f54af26c89b5e48a41c299; affected 4aece6a19cf7f474f15eb861ba74db4479884ce3 before f31f3c042e024aef437cda42f0424ae8d4594b6c; affected 4aece6a19cf7f474f15eb861ba74db4479884ce3 before 8fa4804fe62ca4155a2d8fc2789d630376cbf2fc |
| Linux / Linux | affected 2.6.31; unaffected 0 before 2.6.31; unaffected 6.6.160 through 6.6.*; unaffected 6.12.114 through 6.12.*; unaffected 6.18.57 through 6.18.*; unaffected 7.2.6 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/ed54460caf5b5aa65ec03c9a6032d831f39f19f5
- https://git.kernel.org/stable/c/7510a5b9edec9d9536a4e69f10edfb2592e6cf7f
- https://git.kernel.org/stable/c/f4d23937e1c41995c2f54af26c89b5e48a41c299
- https://git.kernel.org/stable/c/f31f3c042e024aef437cda42f0424ae8d4594b6c
- https://git.kernel.org/stable/c/8fa4804fe62ca4155a2d8fc2789d630376cbf2fc