Descripción
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: ceph: bloquear el mutex en ceph_mds_check_access() El manejo de OPEN de sesión MDS reemplaza mdsc->s_cap_auths bajo mdsc->mutex, liberando el arreglo anterior y sus cadenas. ceph_mds_check_access() recorre este arreglo sin mantener el mutex. Por lo tanto, una reapertura de sesión concurrente puede liberar el arreglo mientras se está inspeccionando, lo que provoca un uso después de liberar memoria (use-after-free) como este: Unable to handle kernel paging request at virtual address 003aaad64b2c8bb9 [...] Internal error: Oops: 0000000096000004 [#1] SMP Modules linked in: CPU: 56 UID: 2953037534 PID: 1253231 Comm: php-cgi8.4 Not tainted 6.18.45-i2-ampere #1146 NONE [..] pc : ceph_mds_check_access+0xd4/0x550 lr : ceph_mds_check_access+0xc8/0x550 [...] Call trace: ceph_mds_check_access+0xd4/0x550 (P) ceph_atomic_open+0x138/0xbe8 path_openat+0xa24/0xfa8 do_filp_open+0x94/0x158 do_sys_openat2+0x88/0xf8
Qué hacer
Revisa si usas el producto afectado y en qué versión, y aplica la actualización o la mitigación que indique el aviso del fabricante. CISA no ha confirmado que se esté explotando; si eso cambia, esta ficha pasa a «explotada» y te avisamos en el boletín.
Versiones afectadas
- Linux Afectadas: 596afb0b8933ba6ed7227adcc538db26feb25c74 y anteriores a 729c1ff670ece6f3d4b1738365a0b2f90d487523 · 596afb0b8933ba6ed7227adcc538db26feb25c74 y anteriores a ca5bfea2045ef2eb3305cf2a9d8da549b76c37d3 · 596afb0b8933ba6ed7227adcc538db26feb25c74 y anteriores a df1a97d5313fccadb08390306d49b194fb027392 · 596afb0b8933ba6ed7227adcc538db26feb25c74 y anteriores a a61c6ae1dae2611082b831b4aaa780878099c012
- Linux Afectadas: 6.10 No afectadas: 6.12.110 · 6.18.51 · 7.2.5 · 7.3
Según el registro de la vulnerabilidad en CVE.org, tal como lo publicó el fabricante. Confirma tu versión exacta en el aviso del fabricante.
Referencias
- Referencia en git.kernel.orggit.kernel.org/stable/c/729c1ff670ece6f3d4b1738365a0b2f90d487523
- Referencia en git.kernel.orggit.kernel.org/stable/c/ca5bfea2045ef2eb3305cf2a9d8da549b76c37d3
- Referencia en git.kernel.orggit.kernel.org/stable/c/df1a97d5313fccadb08390306d49b194fb027392
- Referencia en git.kernel.orggit.kernel.org/stable/c/a61c6ae1dae2611082b831b4aaa780878099c012
Ver el texto original en inglés (CVE.org)
ceph: lock mutex in ceph_mds_check_access()
In the Linux kernel, the following vulnerability has been resolved: ceph: lock mutex in ceph_mds_check_access() MDS session OPEN handling replaces mdsc->s_cap_auths under mdsc->mutex, freeing the previous array and its strings. ceph_mds_check_access() traverses this array without holding the mutex. A concurrent session reopen can therefore free the array while it is being inspected, resulting in a use-after-free like this: Unable to handle kernel paging request at virtual address 003aaad64b2c8bb9 [...] Internal error: Oops: 0000000096000004 [#1] SMP Modules linked in: CPU: 56 UID: 2953037534 PID: 1253231 Comm: php-cgi8.4 Not tainted 6.18.45-i2-ampere #1146 NONE [..] pc : ceph_mds_check_access+0xd4/0x550 lr : ceph_mds_check_access+0xc8/0x550 [...] Call trace: ceph_mds_check_access+0xd4/0x550 (P) ceph_atomic_open+0x138/0xbe8 path_openat+0xa24/0xfa8 do_filp_open+0x94/0x158 do_sys_openat2+0x88/0xf8