Description
In the Linux kernel, the following vulnerability has been resolved: libceph: Fix potential out-of-bounds access in osdmap_decode() When decoding osd_state and osd_weight from an incoming osdmap in osdmap_decode(), both are decoded for each osd, i.e., map->max_osd times. The ceph_decode_need() check only accounts for sizeof(*map->osd_weight) once. This can potentially result in an out-of-bounds memory access if the incoming message is corrupted such that the max_osd value exceeds the actual content of the osdmap message. This patch fixes the issue by changing the corresponding part in the ceph_decode_need() check to account for map->max_osd*sizeof(*map->osd_weight).
Product status
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before 36a79759a288961b1ff28a68ec2d1f56f6848098
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before 3f2575bb7f955d42569d96c3e04fa958a0dcf4b4
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before 8713bbc4b2b9ad78f803978e54b7e49dd21bd9be
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before 0d2dd7e6bb74fd7712aa73457a4a821906c6863a
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before e7187f33c02488697ec0d01d82bf7a3f8deaba8f
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before 48df98d12b15360cd56af5c1f460307b340c1197
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before ee933694645dac062d65fc2743f92bc06fa0db6b
dcbc919a5dc8c2629684a113a90c0b6fe10c3462 (git) before 35d0ed82d03e5ee77ea4f31f20e29562a7721649
5.3
Any version before 5.3
5.10.258 (semver)
5.15.209 (semver)
6.1.175 (semver)
6.6.141 (semver)
6.12.91 (semver)
6.18.33 (semver)
7.0.10 (semver)
7.1 (original_commit_for_fix)
References
git.kernel.org/...c/36a79759a288961b1ff28a68ec2d1f56f6848098
git.kernel.org/...c/3f2575bb7f955d42569d96c3e04fa958a0dcf4b4
git.kernel.org/...c/8713bbc4b2b9ad78f803978e54b7e49dd21bd9be
git.kernel.org/...c/0d2dd7e6bb74fd7712aa73457a4a821906c6863a
git.kernel.org/...c/e7187f33c02488697ec0d01d82bf7a3f8deaba8f
git.kernel.org/...c/48df98d12b15360cd56af5c1f460307b340c1197
git.kernel.org/...c/ee933694645dac062d65fc2743f92bc06fa0db6b
git.kernel.org/...c/35d0ed82d03e5ee77ea4f31f20e29562a7721649